C# Class System.Dynamic.DynamicObject

Inheritance: IDynamicMetaObjectProvider
Show file Open project: jschementi/iron Class Usage Examples

Public Methods

Method Description
GetMetaObject ( Expression parameter ) : DynamicMetaObject

The provided MetaObject will dispatch to the Dynamic virtual methods. The object can be encapsulated inside of another MetaObject to provide custom behavior for individual actions.

TryDeleteIndex ( DeleteIndexBinder binder, object indexes ) : bool

Provides the implementation of performing a delete index operation. Derived classes can override this method to custmize behavior. When not overridden the call site requesting the binder determines the behavior.

TryDeleteMember ( DeleteMemberBinder binder ) : bool

Provides the implementation of deleting a member. Derived classes can override this method to customize behavior. When not overridden the call site requesting the binder determines the behavior.

TrySetMember ( SetMemberBinder binder, object value ) : bool

Provides the implementation of setting a member. Derived classes can override this method to customize behavior. When not overridden the call site requesting the binder determines the behavior.

Protected Methods

Method Description
DynamicObject ( ) : Microsoft.Scripting.Ast

Enables derived types to create a new instance of DynamicObject. DynamicObject instances cannot be directly instantiated because they have no implementation of dynamic behavior.

Private Methods

Method Description
GetDynamicMemberNames ( ) : System.Collections.Generic.IEnumerable
TryBinaryOperation ( BinaryOperationBinder binder, object arg, object &result ) : bool
TryConvert ( ConvertBinder binder, object &result ) : bool
TryCreateInstance ( CreateInstanceBinder binder, object args, object &result ) : bool
TryGetIndex ( GetIndexBinder binder, object indexes, object &result ) : bool
TryGetMember ( GetMemberBinder binder, object &result ) : bool
TryInvoke ( InvokeBinder binder, object args, object &result ) : bool
TryInvokeMember ( InvokeMemberBinder binder, object args, object &result ) : bool
TrySetIndex ( SetIndexBinder binder, object indexes, object value ) : bool
TryUnaryOperation ( UnaryOperationBinder binder, object &result ) : bool

Method Details

DynamicObject() protected method

Enables derived types to create a new instance of DynamicObject. DynamicObject instances cannot be directly instantiated because they have no implementation of dynamic behavior.
protected DynamicObject ( ) : Microsoft.Scripting.Ast
return Microsoft.Scripting.Ast

GetMetaObject() public method

The provided MetaObject will dispatch to the Dynamic virtual methods. The object can be encapsulated inside of another MetaObject to provide custom behavior for individual actions.
public GetMetaObject ( Expression parameter ) : DynamicMetaObject
parameter System.Linq.Expressions.Expression
return DynamicMetaObject

TryDeleteIndex() public method

Provides the implementation of performing a delete index operation. Derived classes can override this method to custmize behavior. When not overridden the call site requesting the binder determines the behavior.
public TryDeleteIndex ( DeleteIndexBinder binder, object indexes ) : bool
binder DeleteIndexBinder The binder provided by the call site.
indexes object The indexes to be deleted.
return bool

TryDeleteMember() public method

Provides the implementation of deleting a member. Derived classes can override this method to customize behavior. When not overridden the call site requesting the binder determines the behavior.
public TryDeleteMember ( DeleteMemberBinder binder ) : bool
binder DeleteMemberBinder The binder provided by the call site.
return bool

TrySetMember() public method

Provides the implementation of setting a member. Derived classes can override this method to customize behavior. When not overridden the call site requesting the binder determines the behavior.
public TrySetMember ( SetMemberBinder binder, object value ) : bool
binder SetMemberBinder The binder provided by the call site.
value object The value to set.
return bool