protected override object OnFrameGet(Engine engine) { engine.SetYieldFrame(); var type = Type != null ? Type.Get(engine) as Type : null; Body.Execute(engine); return TypeHelper.CreateCollection(engine.GetYieldedValues(), type, null); }
protected override object OnGet(Engine engine) { engine.SetYieldFrame(); Body.Execute(engine); var type = engine.GetType(TypeProperty, TypePath, TypeCodeTree); var typeArgument = engine.GetType(TypeArgumentProperty, TypeArgumentPath, TypeArgumentCodeTree); var collection = TypeHelper.CreateCollection(engine.GetYieldedValues(), type, typeArgument); return collection; }