Esempio n. 1
0
 public DMASTDefinitionParameter(DMASTPath path, DMASTExpression value, DMValueType type, DMASTExpression possibleValues)
 {
     Path           = path;
     Value          = value;
     Type           = type;
     PossibleValues = possibleValues;
 }
Esempio n. 2
0
        public DMASTProcStatementVarDeclaration(DMASTPath path, DMASTExpression value)
        {
            int       varElementIndex = path.Path.FindElement("var");
            DreamPath typePath        = path.Path.FromElements(varElementIndex + 1, -2);

            Type  = (typePath.Elements.Length > 0) ? new DMASTPath(typePath) : null;
            Name  = path.Path.LastElement;
            Value = value;
        }
Esempio n. 3
0
        public DMASTObjectVarDefinition(DMASTPath astPath, DMASTExpression value)
        {
            DreamPath path = astPath.Path;

            int globalElementIndex = path.FindElement("global");

            if (globalElementIndex != -1)
            {
                path     = path.RemoveElement(globalElementIndex);
                IsGlobal = true;
            }

            int       varElementIndex = path.FindElement("var");
            DreamPath varPath         = path.FromElements(varElementIndex + 1, -1);

            ObjectPath = (varElementIndex > 1) ? new DMASTPath(path.FromElements(0, varElementIndex)) : null;
            Type       = (varPath.Elements.Length > 1) ? new DMASTPath(varPath.FromElements(0, -2)) : null;
            Name       = varPath.LastElement;
            Value      = value;
        }
Esempio n. 4
0
 public DMASTObjectVarOverride(DMASTPath path, DMASTExpression value)
 {
     ObjectPath = (path.Path.Elements.Length > 1) ? new DMASTPath(path.Path.FromElements(0, -2)) : null;
     VarName    = path.Path.LastElement;
     Value      = value;
 }
Esempio n. 5
0
 public DMASTProcDefinition(DMASTPath path, DMASTDefinitionParameter[] parameters, DMASTProcBlockInner body)
 {
     Path       = path;
     Parameters = parameters;
     Body       = body;
 }
Esempio n. 6
0
 public DMASTObjectDefinition(DMASTPath path, DMASTBlockInner innerBlock)
 {
     Path       = path;
     InnerBlock = innerBlock;
 }
Esempio n. 7
0
 public DMASTNewPath(DMASTPath path, DMASTCallParameter[] parameters)
 {
     Path       = path;
     Parameters = parameters;
 }
Esempio n. 8
0
 public DMASTConstantPath(DMASTPath value)
 {
     Value = value;
 }