class Reflect
The Reflect API is a way to manipulate values dynamically through an abstract interface in an untyped manner. Use with care.
Class Fields
static function callMethod(o:Dynamic, func:Function, args:Array<Dynamic>): Dynamic
Call a method with the given object and arguments.
static function compareMethods(f1:Dynamic, f2:Dynamic): Bool
Compares the functions f1 and f2.
If f1 or f2 are not functions, the result is unspecified.
Otherwise the result is true if f1 and the f2 are physically equal,
false otherwise.
static function field(o:Dynamic, field:String): Dynamic
Returns the value of the field named field on object o.
If o is not an object or has no field named field, the result is
null.
If the field is defined as a property, its accessors are ignored. Refer
to Reflect.getProperty for a function supporting property accessors.
If field is null, the result is unspecified.
(As3) If used on a property field, the getter will be invoked. It is not possible to obtain the value directly.
static function fields(o:Dynamic): Array<String>
Returns the fields of structure o.
This method is only guaranteed to work on anonymous structures. Refer to
Type.getInstanceFields for a function supporting class instances.
If o is null, the result is unspecified.
static function getProperty(o:Dynamic, field:String): Dynamic
Returns the value of the field named field on object o, taking
property getter functions into account.
If the field is not a property, this function behaves like
Reflect.field, but might be slower.
If o or field are null, the result is unspecified.
static function hasField(o:Dynamic, field:String): Bool
Tells if structure o has a field named field.
This is only guaranteed to work for anonymous structures. Refer to
Type.getInstanceFields for a function supporting class instances.
If o or field are null, the result is unspecified.
static function isFunction(f:Dynamic): Bool
Returns true if f is a function, false otherwise.
If f is null, the result is false.
static function isObject(v:Dynamic): Bool
Tells if v is an object.
The result is true if v is one of the following:
- class instance
- structure
- Class
- Enum
Otherwise, including if v is null, the result is false.
static function makeVarArgs(f:Array<Dynamic> ->Dynamic): Dynamic
static function makeVarArgs(f:Array<Dynamic> ->Void): Dynamic
Transform a function taking an array of arguments into a function that can be called with any number of arguments.
static function setField(o:Dynamic, field:String, value:Dynamic): Void
Sets the field named field of object o to value value.
If o has no field named field, this function is only guaranteed to
work for anonymous structures.
If o or field are null, the result is unspecified.
(As3) If used on a property field, the setter will be invoked. It is not possible to set the value directly.
static function setProperty(o:Dynamic, field:String, value:Dynamic): Void
Sets the field named field of object o to value value, taking
property setter functions into account.
If the field is not a property, this function behaves like
Reflect.setField, but might be slower.
If field is null, the result is unspecified.