public override EcmaValueHandle ToHandle(string value) { if (longDict[value] is EcmaValueHandle handle) { return(handle); } lock (longDict) { if (longDict[value] is EcmaValueHandle handle2) { return(handle2); } EcmaValueHandle handle3 = new EcmaValueHandle(strArr.Count); longDict[value] = handle3; strArr.Add(value); return(handle3); } }
public string GetToStringTag(EcmaValueHandle handle) { return(binder.ToStringTag); }
public override long FromHandle(EcmaValueHandle handle) { return(handle.Value); }
public string ToString(EcmaValueHandle handle) { throw new InvalidOperationException(); }
public EcmaValue ToPrimitive(EcmaValueHandle handle, EcmaPreferredPrimitiveType preferredType) { throw new InvalidOperationException(); }
public EcmaValueType GetValueType(EcmaValueHandle handle) { return(SharedValue); }
public bool ToBoolean(EcmaValueHandle handle) { throw new InvalidOperationException(); }
public bool HasProperty(EcmaValueHandle handle, EcmaPropertyKey name) { throw new InvalidOperationException(); }
public bool ToBoolean(EcmaValueHandle handle) { return(binder.ToBoolean(value)); }
public IEnumerable <EcmaPropertyKey> GetEnumerableOwnProperties(EcmaValueHandle handle) { return(binder.GetEnumerableOwnProperties(value)); }
public bool HasOwnProperty(EcmaValueHandle handle, EcmaPropertyKey name) { return(binder.HasOwnProperty(value, name)); }
public EcmaValue Call(EcmaValueHandle handle, EcmaValue thisValue, params EcmaValue[] arguments) { throw new EcmaTypeErrorException(InternalString.Error.NotFunction); }
public bool TrySet(EcmaValueHandle handle, EcmaPropertyKey name, EcmaValue value) { return(binder.TrySet(this.value, name, value)); }
public EcmaNumberType GetNumberType(EcmaValueHandle handle) { return(binder.NumberType); }
public EcmaValueType GetValueType(EcmaValueHandle handle) { return(binder.ValueType); }
public IEnumerable <EcmaPropertyKey> GetEnumerableOwnProperties(EcmaValueHandle handle) { throw new InvalidOperationException(); }
public int GetHashCode(EcmaValueHandle handle) { throw new InvalidOperationException(); }
public int ToInt32(EcmaValueHandle handle) { return(binder.ToInt32(value)); }
public bool IsExtensible(EcmaValueHandle handle) { throw new InvalidOperationException(); }
public long ToInt64(EcmaValueHandle handle) { return(binder.ToInt64(value)); }
public double ToDouble(EcmaValueHandle handle) { throw new InvalidOperationException(); }
public bool TrySet(EcmaValueHandle handle, EcmaPropertyKey name, EcmaValue value) { throw new InvalidOperationException(); }
public EcmaValue ToNumber(EcmaValueHandle handle) { throw new InvalidOperationException(); }
public EcmaNumberType GetNumberType(EcmaValueHandle handle) { return(EcmaNumberType.Int64); }
public RuntimeObject ToRuntimeObject(EcmaValueHandle handle) { throw new InvalidOperationException(); }
public long ToInt64(EcmaValueHandle handle) { return(handle.Value); }
public override Symbol FromHandle(EcmaValueHandle handle) { return(Symbol.GetSymbol((WellKnownSymbol)handle.Value)); }
public EcmaValue Call(EcmaValueHandle handle, EcmaValue thisValue, EcmaValue[] arguments) { throw new InvalidOperationException(); }
public override T FromHandle(EcmaValueHandle handle) { return(getObject(handle.Value)); }
public object FromHandle(EcmaValueHandle handle) { throw new InvalidOperationException(); }