ValueKind
Overview
ValueKind is used in the Value and it's subclasses as a fast way to see what kind of value an instance is, without having to use "is" checks on all types.
Location
- Reference: RemObjects.Elements.Cirrus.dll
- Namespace: RemObjects.Elements.Cirrus.Values
| Value | Description |
|---|---|
| AnonymousMethod | An anonymous method (or lambda). |
| AnonymousParameter | Anonymous parameter value (a reference to an anonymous parameter defined on an anonymous method). |
| Array | The value is an inline array expression. Like |
| ArrayCtorCall | The value is a call to an array constructor, like new byte[16]. |
| BeginLocalVar | The value is a reference to a local defined in a BeginStatement. |
| Between | The value is a between value, like 1 < a < 3. |
| BinValueOp | The value is a binary expression, like 1 + 1. |
| Case | The value is a case expression. |
| Coalesce | The value is a coalesce expression. |
| ConstructorOf | The value is a ConstructorOf reference to a constructor. |
| Data | The value is a data value. |
| Default | The value is a Default(type) expression. |
| DuckType | duck type value (duck<X>) |
| Empty | Represents an "empty" value. Used for properties with read/write accessors that have a default implementation. |
| ExceptLocalVar | The value points to a local defined in an Except block. |
| FieldOf | The value is a System.Reflection.FieldInfo to a field. |
| FieldVar | The value is a reference to an instance field. |
| ForInLocalVar | The value is a reference to a local defined as part of a for (each) in expression. |
| ForLocalVar | The value is a reference to a local defined as part of a for expression. |
| Identifier | Identifier valeu |
| IIf | The value is an IIF expression: iif(a = 15, b, a). |
| Length | The value is a Length expression: Length(x). |
| LocalVar | The value is a reference to a local defined in the var section of the method. |
| LockingLocalVar | The value is a reference to a local defined in a locked statement. |
| MethodOf | The value is a reference to a MethodInfo. |
| NamedLocalValue | The value is a named local. |
| New | The value is a call to a constructor. |
| Nil | The value is nil. |
| NotNil | The value uses the not null operator on the left side. Pass this as a "Self" for instance fields and method calls. |
| ParamVar | The value is a reference to a parameter. |
| PlaceholderValue | Placeholder value |
| Proc | The value is a method call. |
| ProcPtr | The value is a reference to a method. |
| Range | The value is a range value like a .. b. |
| Result | The value points to the result of the current method. |
| Self | The value points to the "self" of the current method. |
| SizeOf | The value contains the size of a type. |
| Statement | The value contains both a statement and a value to push. The statement cannot be something that creates a protected block (locking, using, try). The statement is executed before the value is pushed. |
| StaticVar | The value points to a static variable. |
| SubArray | The value accesses an element of an array expression: a[b]. |
| Type | The value is a type, used for calls on static methods. |
| TypeOf | The value is a TypeOf value. |
| Undefined | A value not supported by Cirrus. |
| UnValueOp | The value is an unary operator like casting, not, negating. |
| UsingLocalVar | The value points to a local defined in a using block. |
| WithLocalVar | The value points to a local defined in a with block. |