/// <summary> /// 15.1.2.4 /// </summary> public JsInstance IsNaN(JsInstance[] arguments) { if (arguments.Length < 1) { return(BooleanClass.New(false)); } return(BooleanClass.New(double.NaN.Equals(arguments[0].ToNumber()))); }
/// <summary> /// 15.1.2.5 /// </summary> protected JsInstance isFinite(JsInstance[] arguments) { if (arguments.Length < 1 || arguments[0] == JsUndefined.Instance) { return(BooleanClass.False); } var value = arguments[0]; return(BooleanClass.New((value != NumberClass["NaN"] && value != NumberClass["POSITIVE_INFINITY"] && value != NumberClass["NEGATIVE_INFINITY"]) )); }
public void A_boolean_value_should_be_converted_from_a_string() { List<IArgument> arguments = new List<IArgument>(); arguments.Add(new Argument("true")); BooleanClass bc = new BooleanClass(); IArgumentMapFactory mapFactory = new ArgumentMapFactory(); IArgumentMap map = mapFactory.CreateMap(bc); map.ApplyTo(bc, arguments); Assert.That(bc.Value, Is.True); }
public JsObject Wrap(object value) { switch (Convert.GetTypeCode(value)) { case TypeCode.Boolean: return(BooleanClass.New((bool)value)); case TypeCode.Char: case TypeCode.String: return(StringClass.New(Convert.ToString(value))); case TypeCode.DateTime: return(DateClass.New((DateTime)value)); case TypeCode.Byte: case TypeCode.Int16: case TypeCode.Int32: case TypeCode.Int64: case TypeCode.SByte: case TypeCode.UInt16: case TypeCode.UInt32: case TypeCode.UInt64: case TypeCode.Decimal: case TypeCode.Double: case TypeCode.Single: return(NumberClass.New(Convert.ToDouble(value))); case TypeCode.Object: return(ObjectClass.New(value)); case TypeCode.DBNull: case TypeCode.Empty: default: throw new ArgumentNullException("value"); } }
public void LoadBuiltinClasses() { classes["Int"] = new IntClass(); classes["Float"] = new FloatClass(); classes["Boolean"] = new BooleanClass(); classes["String"] = new StringClass(); classes["Char"] = new CharClass(); classes["Byte"] = new ByteClass(); classes["Message"] = new MessageClass(); classes["Unassigned"] = new UnassignedClass(); classes["Tuple"] = new TupleClass(); classes["NameValue"] = new NameValueClass(); classes["Lambda"] = new LambdaClass(); classes["Void"] = new VoidClass(); classes["Some"] = new SomeClass(); classes["None"] = new NoneClass(); classes["Array"] = new ArrayClass(); classes["Iterator"] = new IteratorClass(); classes["LazyIterator"] = new LazyIteratorClass(); classes["StreamIterator"] = new StreamIteratorClass(); classes["Any"] = new AnyClass(); classes["Placeholder"] = new PlaceholderClass(); classes["Range"] = new RangeClass(); classes["Dictionary"] = new DictionaryClass(); classes["Container"] = new ContainerClass(); classes["Unmatched"] = new UnmatchedClass(); classes["Complex"] = new ComplexClass(); classes["Rational"] = new RationalClass(); classes["Long"] = new LongClass(); classes["Lazy"] = new LazyClass(); classes["YieldingInvokable"] = new YieldingInvokableClass(); classes["Del"] = new DelClass(); classes["Slice"] = new SliceClass(); classes["End"] = new EndClass(); classes["List"] = new ListClass(); classes["Arguments"] = new ArgumentsClass(); classes["Symbol"] = new SymbolClass(); classes["Infinity"] = new InfinityClass(); classes["OpenRange"] = new OpenRangeClass(); classes["KeyValue"] = new KeyValueClass(); classes["Regex"] = new RegexClass(); classes["Pattern"] = new PatternClass(); classes["PackageFunction"] = new PackageFunctionClass(); classes["Sys"] = new SysClass(); classes["Math"] = new MathClass(); classes["RuntimeFunction"] = new RuntimeFunctionClass(); classes["Reference"] = new ReferenceClass(); classes["Group"] = new RegexGroupClass(); classes["Match"] = new RegexMatchClass(); classes["Date"] = new DateClass(); classes["Interval"] = new IntervalClass(); classes["TypeConstraint"] = new TypeConstraintClass(); classes["ByteArray"] = new ByteArrayClass(); classes["Selector"] = new SelectorClass(); classes["Number"] = new NumberClass(); classes["Collection"] = new CollectionClass(); classes["TextFinding"] = new TextFindingClass(); classes["SkipTake"] = new SkipTakeClass(); classes["Constructor"] = new ConstructorClass(); classes["MutString"] = new MutStringClass(); classes["Error"] = new ErrorClass(); classes["Success"] = new SuccessClass(); classes["Failure"] = new FailureClass(); classes["Optional"] = new OptionalClass(); classes["Result"] = new ResultClass(); classes["Monad"] = new MonadClass(); classes["Unit"] = new UnitClass(); classes["YieldReturn"] = new YieldReturnClass(); classes["Index"] = new IndexClass(); classes["Cycle"] = new CycleClass(); classes["Set"] = new SetClass(); }
public static void Main() { BooleanClass boolClassObject = new BooleanClass(); boolClassObject.ToString(true); }