21 throw new BadRuntimeException(
"BadNative<T> constructor takes one argument of type BadNative<T>");
43 throw new Exception(
"Can not construct native object with null value");
85 return EqualityComparer<T>.Default.GetHashCode(
Value!);
136 return caller !=
null && caller.Provider.HasObject<T>(propName);
143 $
"BadNative<{typeof(T).Name}>.{propName}",
145 ? caller.Provider.GetObject<T>(propName,
this, caller)
Implements the Scope for the Script Engine.
Gets thrown by the runtime.
static BadRuntimeException Create(BadScope? scope, string message)
Creates a new BadScriptException.
The Base Class for all BadScript Objects.
Implements the base functionality for a BadScript Reference.
static BadObjectReference Make(string refText, Func< BadObject > getter, Action< BadObject, BadPropertyInfo?>? setter=null, Action? delete=null)
Creates a new Reference Object.
Implements a Native Type.
static bool operator!=(BadNative< T > a, BadObject b)
Implements the != operator.
static readonly BadClassPrototype s_Prototype
The Prototype for the Native Type.
T Value
The Value of the Native Type.
override string ToSafeString(List< BadObject > done)
BadNative(T value)
Creates a new Native Type.
override bool Equals(object? obj)
Returns true if this and the other objects are equal.
bool Equals(IBadNative? other)
Returns true if this and the other native types are equal.
static bool operator==(BadNative< T > a, BadObject b)
Implements the == operator.
override bool HasProperty(string propName, BadScope? caller=null)
Returns true if the object contains a given property or there exists an extension for the current Ins...
Type IBadNative. Type
The Type of the Native Type.
override BadObjectReference GetProperty(string propName, BadScope? caller=null)
Returns a Reference to the Property with the given Name.The Property Reference
override BadClassPrototype GetPrototype()
readonly T m_Value
The Value of the Native Type.
override int GetHashCode()
Implements a Class Prototype for the BadScript Language.
Implements a Native Class Prototype.
Defines properties for Native Types.
object Value
The Value of the Native Object.
Contains the Error Objects for the BadScript2 Language.
Contains the Native Runtime Objects.
Contains Runtime Type Objects.