C# (CSharp) IronPython.Runtime.Types Namespace

Сlasses

Name Description
BuiltinMethodDescriptor
CachedNewTypeInfo
ClassMethodTracker
CustomAttributeTracker Provides a CustomTracker which handles special fields which have custom behavior on get/set.
DocBuilder
ExtensionPropertyInfo
NameConverter Contains helper methods for converting C# names into Python names.
NewTypeInfo TypeInfo captures the minimal CLI information required by NewTypeMaker for a Python object that inherits from a CLI type.
NewTypeMaker Python class hierarchy is represented using the __class__ field in the object. It does not use the CLI type system for pure Python types. However, Python types which inherit from a CLI type, or from a builtin Python type which is implemented in the engine by a CLI type, do have to use the CLI type system to interoperate with the CLI world. This means that objects of different Python types, but with the same CLI base type, can use the same CLI type - they will just have different values for the __class__ field. The easiest way to inspect the functionality implemented by NewTypeMaker is to persist the generated IL using "ipy.exe -X:SaveAssemblies", and then inspect the persisted IL using ildasm.
OldClass
OldClass.OldClassDebugView
OldInstance
OperatorTracker
PythonCustomTracker
PythonTypeSlot
ReflectedEvent
ReflectedEvent.BadEventChange
ReflectedEvent.BoundEvent
ReflectedField
ReflectedProperty
ReturnFixer Same as the DLR ReturnFixer, but accepts lower level constructs, such as LocalBuilder, ParameterInfos and ILGen.
TypeCache
TypeInfo Helpers for interacting w/ .NET types. This includes: Member resolution via GetMember/GetMembers. This performs a member lookup which includes the registered extension types in the PythonBinder. Internally the class has many MemberResolver's which provide the various resolution behaviors. Cached member access - this is via static classes such as Object and provides various MemberInfo's so we're not constantly looking up via reflection.
TypeInfo.ComparisonResolver Resolves methods mapped to __gt__, __lt__, __ge__, __le__, as well as providing an alternate resolution for __eq__ and __ne__, from the comparable type's CompareTo method. This should be run after the EqualityResolver.
TypeInfo.DocumentationDescriptor
TypeInfo.EqualityResolver Resolves methods mapped to __eq__ and __ne__ from: 1. IStructuralEquatable.Equals 2. IValueEquality.Equals (CLR2 only)
TypeInfo.LookupBinder MemberBinder which searches only the current type and it's extension types to find a member.
TypeInfo.MemberBinder Base class used for resolving a name into a member on the type.
TypeInfo.MemberResolver Abstract class used for resolving members. This provides two methods of member look. The first is looking up a single member by name. The other is getting all of the members. There are various subclasses of this which have different methods of resolving the members. The primary function of the resolvers are to provide the name->value lookup. They also need to provide a simple name enumerator. The enumerator is kept simple because it's allowed to return duplicate names as well as return names of members that don't exist. The base MemberResolver will then verify their existance as well as filter duplicates.
TypeInfo.OneOffOperatorBinder
TypeInfo.OneOffPowerBinder
TypeInfo.OneOffResolver One off resolver for various special methods which are known by name. A delegate is provided to provide the actual member which will be resolved.
TypeInfo.OperatorResolver Resolves methods mapped to __*__ methods automatically from the .NET operator.
TypeInfo.PrivateBindingResolver Provides bindings to private members when that global option is enabled.
TypeInfo.ProtectedMemberResolver Provides resolutions for protected members that haven't yet been subclassed by NewTypeMaker.
TypeInfo.ResolveBinder MemberBinder which searches the entire type hierarchy and their extension types to find a member.
TypeInfo.StandardResolver Standard resolver for looking up .NET members. Uses reflection to get the members by name.
TypeInfo._IPythonObject
TypeInfo._Object
TypeInfo._OperationFailed
TypeInfo._PythonDictionary
TypeInfo._PythonGenerator
TypeInfo._PythonOps