Class IrType
A type that is decoded from a Flame IR type LNode.
Inherited Members
Namespace: Flame.Ir
Assembly: Flame.Ir.dll
Syntax
public class IrType : IrMember, IType, IGenericMember, IMember
Properties
| Improve this Doc View SourceBaseTypes
Gets this type's base types. Base types can be either classes or interfaces.
Declaration
public IReadOnlyList<IType> BaseTypes { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IReadOnlyList<IType> | A read-only list of base types. |
Fields
Gets this type's fields.
Declaration
public IReadOnlyList<IField> Fields { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IReadOnlyList<IField> | A read-only list of fields. |
GenericParameters
Gets the list of generic parameters for this generic member.
Declaration
public IReadOnlyList<IGenericParameter> GenericParameters { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IReadOnlyList<IGenericParameter> | The generic parameters. |
Methods
Gets this type's methods.
Declaration
public IReadOnlyList<IMethod> Methods { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IReadOnlyList<IMethod> | A read-only list of methods. |
NestedTypes
Gets the nested types defined by this type.
Declaration
public IReadOnlyList<IType> NestedTypes { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IReadOnlyList<IType> | A read-only list of nested types. |
Parent
Gets the parent entity that defines and owns this type.
Declaration
public TypeParent Parent { get; }
Property Value
Type | Description |
---|---|
TypeParent | The parent entity. |
Properties
Gets this type's properties.
Declaration
public IReadOnlyList<IProperty> Properties { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IReadOnlyList<IProperty> | A read-only list of properties. |
Methods
| Improve this Doc View SourceDecode(LNode, DecoderState)
Decodes an LNode as a type definition.
Declaration
public static IrType Decode(LNode node, DecoderState state)
Parameters
Type | Name | Description |
---|---|---|
Loyc.Syntax.LNode | node | The node to decode. |
DecoderState | state | The decoder's state. |
Returns
Type | Description |
---|---|
IrType | A decoded type. |
Encode(IType, EncoderState)
Encodes a type definition as an LNode.
Declaration
public static LNode Encode(IType value, EncoderState state)
Parameters
Type | Name | Description |
---|---|---|
IType | value | The type definition to encode. |
EncoderState | state | The encoder state. |
Returns
Type | Description |
---|---|
Loyc.Syntax.LNode | An LNode that represents the type definition. |