public abstract class TypeSymbolBase of everything usable as a type. Type identity is structural: two int[] symbols built independently compare equal, so the binder can construct types on demand without interning them.
No guide page documents this yet — the page shows what the code says about itself.
Fields and properties (9)
public abstract TypeKind TypeKindpublic virtual SpecialType SpecialTypeThe intrinsic type this is, or None.
public virtual ResourceKind ResourceKindHow a shader field of this type binds on the GPU, or None when it is not a resource at all.
public virtual bool IsWritableResourceWhether a shader may store into a binding of this type. False for everything the host uploads — a uniform, a sampled texture, a read-only buffer.
public bool IsErrorTypeTrue when this type stands in for a type that failed to resolve.
public bool IsVoidpublic bool IsNumericLikeScalar, vector or matrix — the types arithmetic operators accept.
public virtual NamedTypeSymbol? BaseTypeThe type this one derives from, or null.
public virtual IReadOnlyList<NamedTypeSymbol> InterfacesProtocols this type conforms to.
Methods (4)
public virtual IReadOnlyList<Symbol> GetMembers()public virtual IReadOnlyList<Symbol> GetMembers(string name)public IEnumerable<TypeSymbol> TypeAndBases()This type plus its base types and protocols, nearest first. Member lookup walks this sequence and stops at the first type that has a match.
public bool IsSubtypeOf(TypeSymbol other)True when is this type or one of its bases/protocols.
Used by (87, showing 40)
- ArrayTypeSymbolVixen.Raven
- BinaryOperatorSignatureVixen.Raven
- BinderVixen.Raven
- BindingContextVixen.Raven
- BoundArrayAccessExpressionVixen.Raven
- BoundAssignmentExpressionVixen.Raven
- BoundBaseExpressionVixen.Raven
- BoundBinaryExpressionVixen.Raven
- BoundBodyVixen.Raven
- BoundCollectionExpressionVixen.Raven
- BoundConditionalExpressionVixen.Raven
- BoundConversionExpressionVixen.Raven
- BoundErrorExpressionVixen.Raven
- BoundExpressionVixen.Raven
- BoundFieldExpressionVixen.Raven
- BoundInvocationExpressionVixen.Raven
- BoundLiteralExpressionVixen.Raven
- BoundLocalExpressionVixen.Raven
- BoundMethodGroupExpressionVixen.Raven
- BoundNamespaceExpressionVixen.Raven
- BoundObjectCreationExpressionVixen.Raven
- BoundParameterExpressionVixen.Raven
- BoundPropertyExpressionVixen.Raven
- BoundRangeExpressionVixen.Raven
- BoundSelfExpressionVixen.Raven
- BoundTupleExpressionVixen.Raven
- BoundTypeExpressionVixen.Raven
- BoundUnaryExpressionVixen.Raven
- BufferTypeSymbolVixen.Raven
- BuilderVixen.Raven
- CompilationVixen.Raven
- CompiledLibraryTestsVixen.Raven.Tests
- ComposeTestsVixen.Raven.Tests
- ConstantEvaluatorVixen.Raven
- ConstraintResolutionVixen.Raven
- ConstructedNamedTypeSymbolVixen.Raven
- ConversionsVixen.Raven
- FieldSymbolVixen.Raven
- FlowAnalysisVixen.Raven
- ImportBinderVixen.Raven