PostSharp SDK 6.10 / / Class Reference / Post­Sharp.​Sdk.​Code­Model Namespace / Binding­Options Enumeration

BindingOptions Enumeration

Determines how the binding methods behave when the requested object is not found.

Namespace:  PostSharp.Sdk.CodeModel
Assembly:  PostSharp.Compiler.Engine (in PostSharp.Compiler.Engine.dll) Version: (
public enum BindingOptions
  Member nameValueDescription
Default0 Default. The library shall create the object and assign it a MetadataToken if the requested object is not found.
OnlyExisting1 Indicates that the methods shall return null if the requested object is not found.
WeakReference2 Indicates that the methods shall create the object but shall not assign it a MetadataToken. This option is typically used when the object should not be linked statically using the module metadata, but the full name of the object is included (for instance with permission sets and custom attributes).
ExistenceMask3 Masks OnlyExisting and WeakReference.
RequireGenericInstance16 Indicates that generic type or method instances are required (all generic parameters should be bound).
RequireGenericDefinition32 Indicates that generic or method definitions are required (generic parameters should not be bound).
RequireGenericMask2097200 Mask isolating the way how generic types or methods should be bound. RequireGenericInstance, RequireGenericDefinition, RequireHalfGenericInstance or Default.
DisallowIntrinsicSubstitution8 Indicates that normal types (Object, Int32, ...) should be used instead of intrinsics (object, int32, ...).
DontThrowException64 Returns a null pointer instead of throwing an exception if the declaration is not found.
OnlyDefinition128 Indicates that only definitions (not references or constructions) are allowed.
RequireIType256 Indicates that a only objects derived from IType should be returned; if the type appears to be a TypeSignature, it will be wrapped into a TypeSpecDeclaration.
RequireEquality512 Indicates that strict equality is required when comparing assembly names.
WeakenReferenceProcessorArchitecture1024 Indicates that the processor architecture is not checked if processor architecture in the definition tern is None.
IgnoreProcessorArchitecture2048 Indicates that the processor architecture is not checked.
IncludeImplicitMembers4096 Include members that are defined dynamically by the CLR, for instance methods for multi-dimensional arrays.
RespectCallingConvention8192 Compare calling conventions.
IgnoreCustomModifiers16384 Obsolete.
BindingEqualityOptions2560 Options used when comparing for equality.
IgnoreReturnType32768 Ignore return type when comparing method signatures.
ApplyGenericMap131072 Apply generic map of the parent type when comparing MemberRef signatures.
RequireHalfGenericInstance2097168 Indicates that a TypeSpec.MethodRef is required, i.e. a generic method definition of a generic type instance.
UseReflectionTypeComparison16777216 Emulate the type comparison that is used in reflection. For example, reflection treats all method pointers as the IntPtr type.
See Also