C# 클래스 IronPython.Runtime.Binding.MetaPythonType

상속: MetaPythonObject, IPythonConvertible
파일 보기 프로젝트 열기: jschementi/iron 1 사용 예제들

공개 메소드들

메소드 설명
BindInvoke ( InvokeBinder call ) : DynamicMetaObject
BindInvokeMember ( InvokeMemberBinder action, DynamicMetaObject args ) : DynamicMetaObject
Invoke ( IronPython.Runtime.Binding.PythonInvokeBinder pythonInvoke, Expression codeContext, DynamicMetaObject target, DynamicMetaObject args ) : DynamicMetaObject

비공개 메소드들

메소드 설명
GetAdapters ( ArgumentValues ai, DynamicMetaObjectBinder call, Expression codeContext, NewAdapter &newAdapter, InitAdapter &initAdapter ) : void
GetErrorRestrictions ( ArgumentValues ai ) : BindingRestrictions
GetInitAdapter ( ArgumentValues ai, PythonTypeSlot init, DynamicMetaObjectBinder call, Expression codeContext ) : InitAdapter
GetInstanceRestriction ( ArgumentValues ai ) : BindingRestrictions
GetNewAdapter ( ArgumentValues ai, PythonTypeSlot newInst, DynamicMetaObjectBinder call, Expression codeContext ) : NewAdapter
HasDefaultInit ( DynamicMetaObjectBinder action ) : bool
HasDefaultNew ( DynamicMetaObjectBinder action ) : bool
HasDefaultNewAndInit ( DynamicMetaObjectBinder action ) : bool
HasFinalizer ( DynamicMetaObjectBinder action ) : bool
InvokeWorker ( DynamicMetaObjectBinder call, DynamicMetaObject args, Expression codeContext ) : DynamicMetaObject
IsStandardDotNetType ( DynamicMetaObjectBinder action ) : bool
MakeAbstractInstantiationError ( DynamicMetaObjectBinder call, ArgumentValues ai, ValidationInfo valInfo ) : DynamicMetaObject
MakeGenericTypeDefinitionError ( DynamicMetaObjectBinder call, ArgumentValues ai, ValidationInfo valInfo ) : DynamicMetaObject
MakeIncorrectArgumentsForCallError ( DynamicMetaObjectBinder call, ArgumentValues ai, ValidationInfo valInfo ) : DynamicMetaObject
MakePythonTypeCall ( DynamicMetaObjectBinder call, Expression codeContext, DynamicMetaObject args ) : DynamicMetaObject

Creating a Python type involves calling __new__ and __init__. We resolve them and generate calls to either the builtin funcions directly or embed sites which call the slots at runtime.

MakeStandardDotNetTypeCall ( DynamicMetaObjectBinder call, Expression codeContext, DynamicMetaObject args ) : DynamicMetaObject

Creating a standard .NET type is easy - we just call it's constructor with the provided arguments.

MakeVersionCheck ( ) : ValidationInfo

Creates a test which tests the specific version of the type.

TooManyArgsForDefaultNew ( DynamicMetaObjectBinder action, DynamicMetaObject args ) : bool

Checks if we have a default new and init - in this case if we have any arguments we don't allow the call.

메소드 상세

BindInvoke() 공개 메소드

public BindInvoke ( InvokeBinder call ) : DynamicMetaObject
call InvokeBinder
리턴 DynamicMetaObject

BindInvokeMember() 공개 메소드

public BindInvokeMember ( InvokeMemberBinder action, DynamicMetaObject args ) : DynamicMetaObject
action InvokeMemberBinder
args DynamicMetaObject
리턴 DynamicMetaObject

Invoke() 공개 메소드

public Invoke ( IronPython.Runtime.Binding.PythonInvokeBinder pythonInvoke, Expression codeContext, DynamicMetaObject target, DynamicMetaObject args ) : DynamicMetaObject
pythonInvoke IronPython.Runtime.Binding.PythonInvokeBinder
codeContext Expression
target DynamicMetaObject
args DynamicMetaObject
리턴 DynamicMetaObject