internal SetPrototype( Engine engine, Realm realm, SetConstructor setConstructor, ObjectPrototype objectPrototype) : base(engine, realm) { _prototype = objectPrototype; _constructor = setConstructor; }
public static SetPrototype CreatePrototypeObject(Engine engine, SetConstructor mapConstructor) { var obj = new SetPrototype(engine) { _prototype = engine.Object.PrototypeObject, _mapConstructor = mapConstructor }; return(obj); }
public static SetConstructor CreateSetConstructorTemplate(string name, Engine engine) { var ctr = new SetConstructor(engine, name); ctr.Extensible = true; // The value of the [[Prototype]] internal property of the Set constructor is the Function prototype object ctr.Prototype = engine.Function.PrototypeObject; ctr.PrototypeObject = SetPrototype.CreatePrototypeObject(engine, ctr); ctr.SetOwnProperty("length", new PropertyDescriptor(0, PropertyFlag.Configurable)); return(ctr); }
public static SetPrototype CreatePrototypeObject(Engine engine, SetConstructor mapConstructor) { var obj = new SetPrototype(engine) { Extensible = true, Prototype = engine.Object.PrototypeObject }; obj.SetOwnProperty("length", new PropertyDescriptor(0, PropertyFlag.Configurable)); obj.SetOwnProperty("constructor", new PropertyDescriptor(mapConstructor, PropertyFlag.NonEnumerable)); return(obj); }
public static SetConstructor CreateSetConstructor(Engine engine) { var obj = new SetConstructor(engine) { _prototype = engine.Function.PrototypeObject }; // The value of the [[Prototype]] internal property of the Set constructor is the Function prototype object obj.PrototypeObject = SetPrototype.CreatePrototypeObject(engine, obj); obj._length = new PropertyDescriptor(0, PropertyFlag.Configurable); // The initial value of Set.prototype is the Set prototype object obj._prototypeDescriptor = new PropertyDescriptor(obj.PrototypeObject, PropertyFlag.AllForbidden); return(obj); }