BooleanPrototype.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using System;
  2. using Jint.Runtime.Interop;
  3. namespace Jint.Native.Boolean
  4. {
  5. /// <summary>
  6. /// http://www.ecma-international.org/ecma-262/5.1/#sec-15.6.4
  7. /// </summary>
  8. public sealed class BooleanPrototype : BooleanInstance
  9. {
  10. private BooleanPrototype(Engine engine) : base(engine)
  11. {
  12. }
  13. public static BooleanPrototype CreatePrototypeObject(Engine engine, BooleanConstructor booleanConstructor)
  14. {
  15. var obj = new BooleanPrototype(engine);
  16. obj.Prototype = engine.Object.PrototypeObject;
  17. obj.PrimitiveValue = false;
  18. obj.FastAddProperty("constructor", booleanConstructor, false, false, false);
  19. return obj;
  20. }
  21. public void Configure()
  22. {
  23. FastAddProperty("toString", new ClrFunctionInstance<object, object>(Engine, ToBooleanString), false, false, false);
  24. FastAddProperty("valueOf", new ClrFunctionInstance<object, object>(Engine, ValueOf), false, false, false);
  25. }
  26. private object ValueOf(object arg1, object[] arg2)
  27. {
  28. throw new NotImplementedException();
  29. }
  30. private object ToBooleanString(object arg1, object[] arg2)
  31. {
  32. throw new NotImplementedException();
  33. }
  34. }
  35. }