BH.oM.CSharp.Variable¶
Represents a code variable in the context of a BHoM abstract syntax tree.
Class structure¶
Implemented interfaces and base types¶
The Variable is inheriting from the following base type(s) and implements the following interfaces:
- BH.oM.Base.BHoMObject
- BH.oM.Base.IBHoMObject
- BH.oM.Base.IObject
Properties¶
Defining properties¶
The following properties are defined on the class
Name | Type | Description | Quantity |
---|---|---|---|
Type | Type | System.Type of the variable. | - |
Expression | ExpressionSyntax | C# syntax representation of the variable. | - |
SourceId | Guid | Id of the node parameter that generated this variable. | - |
Inherited properties¶
The following properties are inherited from the base class of the object
Name | Type | Description | Quantity |
---|---|---|---|
BHoM_Guid | Guid | - | - |
Name | string | - | - |
Fragments | FragmentSet | - | - |
Tags | HashSet<string> | - | - |
CustomData | Dictionary<string, object> | - | - |
Derived properties¶
The following properties are defined as extension methods in one of the BHoM_Engines
Name | Type | Description | Quantity | Engine |
---|---|---|---|---|
SyntaxToken | SyntaxToken | Get the C# syntax token corresponding to a variable. | - | CSharp_Engine |
Code and Schema¶
C# implementation¶
Assembly: CSharp_oM.dll
The C# class definition is available on github:
All history and changes of the class can be found by inspection the history.
JSON Schema implementation¶
The object is defined as a JSON schema. You can validate a JSON instance against this schema by reference. To do this, use the schema reference below in a validator like this one.
JSON Schema
{
"$ref" : "https://raw.githubusercontent.com/BHoM/BHoM_JSONSchema/develop/CSharp_oM/Variable.json"
}
The JSON Schema is available on github here: