C# Class Boo.Lang.Compiler.TypeSystem.TypeSystemServices

Afficher le fichier Open project: boo-lang/boo Class Usage Examples

Méthodes publiques

Свойство Type Description
ArrayType IType
BoolType IType
BuiltinsType IType
ByteType IType
CharType IType
ConditionalAttribute IType
DateTimeType IType
DecimalType IType
DelegateType IType
DoubleType IType
DuckType IType
EnumType IType
ErrorEntity IType
HashType IType
IAstGeneratorMacroType IType
IAstMacroType IType
ICallableType IType
ICollectionGenericType IType
ICollectionType IType
IDisposableType IType
IEnumerableGenericType IType
IEnumerableType IType
IEnumeratorGenericType IType
IEnumeratorType IType
IListGenericType IType
IListType IType
IQuackFuType IType
IntPtrType IType
IntType IType
ListType IType
LongType IType
MulticastDelegateType IType
ObjectArrayType IArrayType
ObjectType IType
RegexType IType
RuntimeServicesType IType
SByteType IType
ShortType IType
SingleType IType
StringType IType
SystemAttribute IType
TimeSpanType IType
TypeType IType
UIntPtrType IType
UIntType IType
ULongType IType
UShortType IType
ValueTypeType IType
VoidType IType

Méthodes publiques

Méthode Description
AddCompilerGeneratedType ( Boo.Lang.Compiler.Ast.TypeDefinition type ) : void
CanBeExplicitlyCastToPrimitiveNumber ( IType type ) : bool
CanBeReachedByDownCastOrPromotion ( IType expectedType, IType actualType ) : bool
CanBeReachedByPromotion ( IType expectedType, IType actualType ) : bool
CanBeReachedFrom ( IType expectedType, IType actualType ) : bool
CanBeReachedFrom ( IType expectedType, IType actualType, bool &byDowncast ) : bool
CanBeReachedFrom ( IType expectedType, IType actualType, bool considerExplicitConversionOperators, bool &byDowncast ) : bool
CheckOverrideSignature ( IMethod impl, IMethod baseMethod ) : bool
CheckOverrideSignature ( IParameter implParameters, IParameter baseParameters ) : bool
ContainsMethodsOnly ( ICollection members ) : bool
FindExplicitConversionOperator ( IType fromType, IType toType ) : IMethod
FindImplicitConversionOperator ( IType fromType, IType toType ) : IMethod
GetAccess ( IAccessibleMember member ) : TypeMemberModifiers
GetCallableType ( CallableSignature signature ) : ICallableType
GetCallableType ( IMethodBase method ) : ICallableType
GetCompilerGeneratedTypesModule ( ) : Module
GetConcreteCallableType ( Node sourceNode, AnonymousCallableType anonymousType ) : IType
GetConcreteCallableType ( Node sourceNode, CallableSignature signature ) : IType
GetConcreteExpressionType ( Expression expression ) : IType
GetDefaultConstructor ( IType type ) : IConstructor
GetDefaultMember ( IType type ) : IEntity
GetEntity ( Node node ) : IEntity
GetEnumeratorItemType ( IType iteratorType ) : IType
GetExpressionType ( Expression node ) : IType
GetGenericEnumerableItemType ( IType iteratorType ) : IType
GetMostGenericType ( Boo.Lang.Compiler.Ast.ExpressionCollection args ) : IType
GetMostGenericType ( IType current, IType candidate ) : IType
GetNullableUnderlyingType ( IType type ) : IType
GetOverriddenSignature ( IMethod baseMethod, IMethod impl ) : CallableSignature
GetPromotedNumberType ( IType left, IType right ) : IType
GetReferencedType ( Expression typeref ) : IType
GetSignature ( IEntityWithParameters method ) : string
GetStringExceptionConstructor ( ) : IConstructor
GetType ( Node node ) : IType
IsAnyType ( IType type ) : bool

Returns true if the type can be either a reference type or a value type. Currently it returns true only for an unconstrained generic parameter type.

IsAttribute ( IType type ) : bool
IsBuiltin ( IEntity entity ) : bool
IsCallable ( IType type ) : bool
IsCallableTypeAssignableFrom ( ICallableType lhs, IType rhs ) : bool
IsDuckType ( IType type ) : bool
IsDuckTyped ( Expression expression ) : bool
IsError ( Expression node ) : bool
IsError ( IEntity entity ) : bool
IsErrorAny ( Boo.Lang.Compiler.Ast.ExpressionCollection collection ) : bool
IsFloatingPointNumber ( IType type ) : bool
IsGenericGeneratorReturnType ( IType returnType ) : bool
IsIntegerNumber ( IType type ) : bool
IsIntegerOrBool ( IType type ) : bool
IsLiteralPrimitive ( IType type ) : bool
IsMacro ( IType type ) : bool
IsNullable ( IType type ) : bool
IsNumber ( IType type ) : bool
IsNumberOrBool ( IType type ) : bool
IsPointerCompatible ( IType type ) : bool
IsPrimitive ( string name ) : bool
IsPrimitiveNumber ( IType type ) : bool
IsQuackBuiltin ( Expression node ) : bool
IsQuackBuiltin ( IEntity entity ) : bool
IsReadOnlyField ( IField field ) : bool
IsReferenceType ( IType type ) : bool

Returns true if the type is a reference type or a generic parameter type that is constrained to represent a reference type.

IsSignedNumber ( IType type ) : bool
IsSystemObject ( IType type ) : bool

checks if the passed type will be equivalente to System.Object in runtime (accounting for the presence of duck typing).

IsUnknown ( Expression node ) : bool
IsUnknown ( IType type ) : bool
IsValidException ( IType type ) : bool
KnowsQuackFu ( IType type ) : bool
Map ( ConstructorInfo constructor ) : IConstructor
Map ( MemberInfo members ) : IEntity
Map ( MethodInfo method ) : IMethod
Map ( ParameterInfo parameters ) : IParameter[]
Map ( Type type ) : IType
MapToConcreteExpressionTypes ( Boo.Lang.Compiler.Ast.ExpressionCollection items ) : void
MapWildcardType ( IType type ) : IType
ResolvePrimitive ( string name ) : IEntity
SizeOf ( IType type ) : int
TypeSystemServices ( ) : System
TypeSystemServices ( CompilerContext context ) : System

Méthodes protégées

Méthode Description
AddBuiltin ( BuiltinFunction function ) : void
AddLiteralPrimitiveType ( string name, IType type ) : void
AddPrimitiveType ( string name, IType type ) : void
PrepareBuiltinFunctions ( ) : void
PreparePrimitives ( ) : void

Private Methods

Méthode Description
CanBeReachedByPromotionImpl ( IType expectedType, IType actualType ) : bool
ClearScopeDependentMemoizedFunctions ( ) : void
CompatibleReturnTypes ( CallableSignature lvalue, CallableSignature rvalue ) : bool
DowncastPermissions ( ) : DowncastPermissions
FindConversionOperator ( string name, IType fromType, IType toType ) : IMethod
FindConversionOperator ( string name, IType fromType, IType toType, IEnumerable candidates ) : IMethod
FindExtension ( IType fromType, string name ) : IEntity[]
GetEnumeratorItemTypeFromAttribute ( IType iteratorType ) : IType
GetExternalEnumeratorItemType ( IType iteratorType ) : IType
GetOptionalEntity ( Node node ) : IEntity
InStrictMode ( ) : bool
InvalidNode ( Node node ) : void
IsAssignableFrom ( IType expectedType, IType actualType ) : bool
IsCallableType ( IType type ) : bool
IsConversionOperator ( IMethod method, IType fromType, IType toType ) : bool
IsSignedInteger ( IType right ) : bool
IsUnsignedInteger ( IType type ) : bool
NewModule ( string nameSpace ) : Module
NewModule ( string nameSpace, string moduleName ) : Module
TypeSystemProvider ( ) : IReflectionTypeSystemProvider

Method Details

AddBuiltin() protected méthode

protected AddBuiltin ( BuiltinFunction function ) : void
function BuiltinFunction
Résultat void

AddCompilerGeneratedType() public méthode

public AddCompilerGeneratedType ( Boo.Lang.Compiler.Ast.TypeDefinition type ) : void
type Boo.Lang.Compiler.Ast.TypeDefinition
Résultat void

AddLiteralPrimitiveType() protected méthode

protected AddLiteralPrimitiveType ( string name, IType type ) : void
name string
type IType
Résultat void

AddPrimitiveType() protected méthode

protected AddPrimitiveType ( string name, IType type ) : void
name string
type IType
Résultat void

CanBeExplicitlyCastToPrimitiveNumber() public méthode

public CanBeExplicitlyCastToPrimitiveNumber ( IType type ) : bool
type IType
Résultat bool

CanBeReachedByDownCastOrPromotion() public méthode

public CanBeReachedByDownCastOrPromotion ( IType expectedType, IType actualType ) : bool
expectedType IType
actualType IType
Résultat bool

CanBeReachedByPromotion() public méthode

public CanBeReachedByPromotion ( IType expectedType, IType actualType ) : bool
expectedType IType
actualType IType
Résultat bool

CanBeReachedFrom() public méthode

public CanBeReachedFrom ( IType expectedType, IType actualType ) : bool
expectedType IType
actualType IType
Résultat bool

CanBeReachedFrom() public méthode

public CanBeReachedFrom ( IType expectedType, IType actualType, bool &byDowncast ) : bool
expectedType IType
actualType IType
byDowncast bool
Résultat bool

CanBeReachedFrom() public méthode

public CanBeReachedFrom ( IType expectedType, IType actualType, bool considerExplicitConversionOperators, bool &byDowncast ) : bool
expectedType IType
actualType IType
considerExplicitConversionOperators bool
byDowncast bool
Résultat bool

CheckOverrideSignature() public static méthode

public static CheckOverrideSignature ( IMethod impl, IMethod baseMethod ) : bool
impl IMethod
baseMethod IMethod
Résultat bool

CheckOverrideSignature() public static méthode

public static CheckOverrideSignature ( IParameter implParameters, IParameter baseParameters ) : bool
implParameters IParameter
baseParameters IParameter
Résultat bool

ContainsMethodsOnly() public static méthode

public static ContainsMethodsOnly ( ICollection members ) : bool
members ICollection
Résultat bool

FindExplicitConversionOperator() public méthode

public FindExplicitConversionOperator ( IType fromType, IType toType ) : IMethod
fromType IType
toType IType
Résultat IMethod

FindImplicitConversionOperator() public méthode

public FindImplicitConversionOperator ( IType fromType, IType toType ) : IMethod
fromType IType
toType IType
Résultat IMethod

GetAccess() public static méthode

public static GetAccess ( IAccessibleMember member ) : TypeMemberModifiers
member IAccessibleMember
Résultat TypeMemberModifiers

GetCallableType() public méthode

public GetCallableType ( CallableSignature signature ) : ICallableType
signature CallableSignature
Résultat ICallableType

GetCallableType() public méthode

public GetCallableType ( IMethodBase method ) : ICallableType
method IMethodBase
Résultat ICallableType

GetCompilerGeneratedTypesModule() public méthode

public GetCompilerGeneratedTypesModule ( ) : Module
Résultat Boo.Lang.Compiler.Ast.Module

GetConcreteCallableType() public méthode

public GetConcreteCallableType ( Node sourceNode, AnonymousCallableType anonymousType ) : IType
sourceNode Node
anonymousType AnonymousCallableType
Résultat IType

GetConcreteCallableType() public méthode

public GetConcreteCallableType ( Node sourceNode, CallableSignature signature ) : IType
sourceNode Node
signature CallableSignature
Résultat IType

GetConcreteExpressionType() public méthode

public GetConcreteExpressionType ( Expression expression ) : IType
expression Boo.Lang.Compiler.Ast.Expression
Résultat IType

GetDefaultConstructor() public méthode

public GetDefaultConstructor ( IType type ) : IConstructor
type IType
Résultat IConstructor

GetDefaultMember() public méthode

public GetDefaultMember ( IType type ) : IEntity
type IType
Résultat IEntity

GetEntity() public static méthode

public static GetEntity ( Node node ) : IEntity
node Node
Résultat IEntity

GetEnumeratorItemType() public méthode

public GetEnumeratorItemType ( IType iteratorType ) : IType
iteratorType IType
Résultat IType

GetExpressionType() public static méthode

public static GetExpressionType ( Expression node ) : IType
node Boo.Lang.Compiler.Ast.Expression
Résultat IType

GetGenericEnumerableItemType() public méthode

public GetGenericEnumerableItemType ( IType iteratorType ) : IType
iteratorType IType
Résultat IType

GetMostGenericType() public méthode

public GetMostGenericType ( Boo.Lang.Compiler.Ast.ExpressionCollection args ) : IType
args Boo.Lang.Compiler.Ast.ExpressionCollection
Résultat IType

GetMostGenericType() public méthode

public GetMostGenericType ( IType current, IType candidate ) : IType
current IType
candidate IType
Résultat IType

GetNullableUnderlyingType() public méthode

public GetNullableUnderlyingType ( IType type ) : IType
type IType
Résultat IType

GetOverriddenSignature() public static méthode

public static GetOverriddenSignature ( IMethod baseMethod, IMethod impl ) : CallableSignature
baseMethod IMethod
impl IMethod
Résultat CallableSignature

GetPromotedNumberType() public méthode

public GetPromotedNumberType ( IType left, IType right ) : IType
left IType
right IType
Résultat IType

GetReferencedType() public static méthode

public static GetReferencedType ( Expression typeref ) : IType
typeref Boo.Lang.Compiler.Ast.Expression
Résultat IType

GetSignature() public static méthode

public static GetSignature ( IEntityWithParameters method ) : string
method IEntityWithParameters
Résultat string

GetStringExceptionConstructor() public méthode

public GetStringExceptionConstructor ( ) : IConstructor
Résultat IConstructor

GetType() public static méthode

public static GetType ( Node node ) : IType
node Node
Résultat IType

IsAnyType() public static méthode

Returns true if the type can be either a reference type or a value type. Currently it returns true only for an unconstrained generic parameter type.
public static IsAnyType ( IType type ) : bool
type IType
Résultat bool

IsAttribute() public méthode

public IsAttribute ( IType type ) : bool
type IType
Résultat bool

IsBuiltin() public méthode

public IsBuiltin ( IEntity entity ) : bool
entity IEntity
Résultat bool

IsCallable() public méthode

public IsCallable ( IType type ) : bool
type IType
Résultat bool

IsCallableTypeAssignableFrom() public méthode

public IsCallableTypeAssignableFrom ( ICallableType lhs, IType rhs ) : bool
lhs ICallableType
rhs IType
Résultat bool

IsDuckType() public méthode

public IsDuckType ( IType type ) : bool
type IType
Résultat bool

IsDuckTyped() public méthode

public IsDuckTyped ( Expression expression ) : bool
expression Boo.Lang.Compiler.Ast.Expression
Résultat bool

IsError() public static méthode

public static IsError ( Expression node ) : bool
node Boo.Lang.Compiler.Ast.Expression
Résultat bool

IsError() public static méthode

public static IsError ( IEntity entity ) : bool
entity IEntity
Résultat bool

IsErrorAny() public static méthode

public static IsErrorAny ( Boo.Lang.Compiler.Ast.ExpressionCollection collection ) : bool
collection Boo.Lang.Compiler.Ast.ExpressionCollection
Résultat bool

IsFloatingPointNumber() public méthode

public IsFloatingPointNumber ( IType type ) : bool
type IType
Résultat bool

IsGenericGeneratorReturnType() public méthode

public IsGenericGeneratorReturnType ( IType returnType ) : bool
returnType IType
Résultat bool

IsIntegerNumber() public méthode

public IsIntegerNumber ( IType type ) : bool
type IType
Résultat bool

IsIntegerOrBool() public méthode

public IsIntegerOrBool ( IType type ) : bool
type IType
Résultat bool

IsLiteralPrimitive() public méthode

public IsLiteralPrimitive ( IType type ) : bool
type IType
Résultat bool

IsMacro() public méthode

public IsMacro ( IType type ) : bool
type IType
Résultat bool

IsNullable() public static méthode

public static IsNullable ( IType type ) : bool
type IType
Résultat bool

IsNumber() public méthode

public IsNumber ( IType type ) : bool
type IType
Résultat bool

IsNumberOrBool() public méthode

public IsNumberOrBool ( IType type ) : bool
type IType
Résultat bool

IsPointerCompatible() public méthode

public IsPointerCompatible ( IType type ) : bool
type IType
Résultat bool

IsPrimitive() public méthode

public IsPrimitive ( string name ) : bool
name string
Résultat bool

IsPrimitiveNumber() public méthode

public IsPrimitiveNumber ( IType type ) : bool
type IType
Résultat bool

IsQuackBuiltin() public méthode

public IsQuackBuiltin ( Expression node ) : bool
node Boo.Lang.Compiler.Ast.Expression
Résultat bool

IsQuackBuiltin() public méthode

public IsQuackBuiltin ( IEntity entity ) : bool
entity IEntity
Résultat bool

IsReadOnlyField() public static méthode

public static IsReadOnlyField ( IField field ) : bool
field IField
Résultat bool

IsReferenceType() public static méthode

Returns true if the type is a reference type or a generic parameter type that is constrained to represent a reference type.
public static IsReferenceType ( IType type ) : bool
type IType
Résultat bool

IsSignedNumber() public méthode

public IsSignedNumber ( IType type ) : bool
type IType
Résultat bool

IsSystemObject() public méthode

checks if the passed type will be equivalente to System.Object in runtime (accounting for the presence of duck typing).
public IsSystemObject ( IType type ) : bool
type IType
Résultat bool

IsUnknown() public static méthode

public static IsUnknown ( Expression node ) : bool
node Boo.Lang.Compiler.Ast.Expression
Résultat bool

IsUnknown() public static méthode

public static IsUnknown ( IType type ) : bool
type IType
Résultat bool

IsValidException() public méthode

public IsValidException ( IType type ) : bool
type IType
Résultat bool

KnowsQuackFu() public méthode

public KnowsQuackFu ( IType type ) : bool
type IType
Résultat bool

Map() public méthode

public Map ( ConstructorInfo constructor ) : IConstructor
constructor System.Reflection.ConstructorInfo
Résultat IConstructor

Map() public méthode

public Map ( MemberInfo members ) : IEntity
members System.Reflection.MemberInfo
Résultat IEntity

Map() public méthode

public Map ( MethodInfo method ) : IMethod
method System.Reflection.MethodInfo
Résultat IMethod

Map() public méthode

public Map ( ParameterInfo parameters ) : IParameter[]
parameters System.Reflection.ParameterInfo
Résultat IParameter[]

Map() public méthode

public Map ( Type type ) : IType
type System.Type
Résultat IType

MapToConcreteExpressionTypes() public méthode

public MapToConcreteExpressionTypes ( Boo.Lang.Compiler.Ast.ExpressionCollection items ) : void
items Boo.Lang.Compiler.Ast.ExpressionCollection
Résultat void

MapWildcardType() public méthode

public MapWildcardType ( IType type ) : IType
type IType
Résultat IType

PrepareBuiltinFunctions() protected méthode

protected PrepareBuiltinFunctions ( ) : void
Résultat void

PreparePrimitives() protected méthode

protected PreparePrimitives ( ) : void
Résultat void

ResolvePrimitive() public méthode

public ResolvePrimitive ( string name ) : IEntity
name string
Résultat IEntity

SizeOf() public méthode

public SizeOf ( IType type ) : int
type IType
Résultat int

TypeSystemServices() public méthode

public TypeSystemServices ( ) : System
Résultat System

TypeSystemServices() public méthode

public TypeSystemServices ( CompilerContext context ) : System
context CompilerContext
Résultat System

Property Details

ArrayType public_oe property

public IType ArrayType
Résultat IType

BoolType public_oe property

public IType BoolType
Résultat IType

BuiltinsType public_oe property

public IType BuiltinsType
Résultat IType

ByteType public_oe property

public IType ByteType
Résultat IType

CharType public_oe property

public IType CharType
Résultat IType

ConditionalAttribute public_oe property

public IType ConditionalAttribute
Résultat IType

DateTimeType public_oe property

public IType DateTimeType
Résultat IType

DecimalType public_oe property

public IType DecimalType
Résultat IType

DelegateType public_oe property

public IType DelegateType
Résultat IType

DoubleType public_oe property

public IType DoubleType
Résultat IType

DuckType public_oe property

public IType DuckType
Résultat IType

EnumType public_oe property

public IType EnumType
Résultat IType

ErrorEntity public_oe static_oe property

public static IType ErrorEntity
Résultat IType

HashType public_oe property

public IType HashType
Résultat IType

IAstGeneratorMacroType public_oe property

public IType IAstGeneratorMacroType
Résultat IType

IAstMacroType public_oe property

public IType IAstMacroType
Résultat IType

ICallableType public_oe property

public IType ICallableType
Résultat IType

ICollectionGenericType public_oe property

public IType ICollectionGenericType
Résultat IType

ICollectionType public_oe property

public IType ICollectionType
Résultat IType

IDisposableType public_oe property

public IType IDisposableType
Résultat IType

IEnumerableGenericType public_oe property

public IType IEnumerableGenericType
Résultat IType

IEnumerableType public_oe property

public IType IEnumerableType
Résultat IType

IEnumeratorGenericType public_oe property

public IType IEnumeratorGenericType
Résultat IType

IEnumeratorType public_oe property

public IType IEnumeratorType
Résultat IType

IListGenericType public_oe property

public IType IListGenericType
Résultat IType

IListType public_oe property

public IType IListType
Résultat IType

IQuackFuType public_oe property

public IType IQuackFuType
Résultat IType

IntPtrType public_oe property

public IType IntPtrType
Résultat IType

IntType public_oe property

public IType IntType
Résultat IType

ListType public_oe property

public IType ListType
Résultat IType

LongType public_oe property

public IType LongType
Résultat IType

MulticastDelegateType public_oe property

public IType MulticastDelegateType
Résultat IType

ObjectArrayType public_oe property

public IArrayType ObjectArrayType
Résultat IArrayType

ObjectType public_oe property

public IType ObjectType
Résultat IType

RegexType public_oe property

public IType RegexType
Résultat IType

RuntimeServicesType public_oe property

public IType RuntimeServicesType
Résultat IType

SByteType public_oe property

public IType SByteType
Résultat IType

ShortType public_oe property

public IType ShortType
Résultat IType

SingleType public_oe property

public IType SingleType
Résultat IType

StringType public_oe property

public IType StringType
Résultat IType

SystemAttribute public_oe property

public IType SystemAttribute
Résultat IType

TimeSpanType public_oe property

public IType TimeSpanType
Résultat IType

TypeType public_oe property

public IType TypeType
Résultat IType

UIntPtrType public_oe property

public IType UIntPtrType
Résultat IType

UIntType public_oe property

public IType UIntType
Résultat IType

ULongType public_oe property

public IType ULongType
Résultat IType

UShortType public_oe property

public IType UShortType
Résultat IType

ValueTypeType public_oe property

public IType ValueTypeType
Résultat IType

VoidType public_oe property

public IType VoidType
Résultat IType