public static function castWeakMap(\WeakMap $c, array $a, Stub $stub, bool $isNested) : array { $map = []; foreach (clone $c as $obj => $data) { $map[] = new EnumStub([ 'object' => $obj, 'data' => $data, ]); } $a += [ Caster::PREFIX_VIRTUAL . 'map' => $map, ]; return $a; }