public ProcedureDeclaration(IntLiteral index, TypeIdentifier returnType, Identifier identifier, List <Parameter> parameters, CompoundStatement body) : base(DeclarationType.Procedure, identifier) { Index = index; ReturnType = returnType; Parameters = parameters; Body = body; }
public VariableDeclaration(VariableModifier modifier, TypeIdentifier type, Identifier identifier, Expression initializer) : base(DeclarationType.Variable, identifier) { Modifier = modifier; Type = type; Initializer = initializer; }
public FunctionDeclaration(IntLiteral index, TypeIdentifier returnType, Identifier identifier, List <Parameter> parameters) : base(DeclarationType.Function, identifier) { Index = index; ReturnType = returnType; Parameters = parameters; }
public override void Visit(TypeIdentifier typeIdentifier) { if (typeof(T) == typeof(TypeIdentifier)) { mCollectedNodes.Add(typeIdentifier as T); } base.Visit(typeIdentifier); }
public static VariableDeclaration FromLibraryConstant(FlowScriptModuleConstant libraryConstant) { var modifier = new VariableModifier(VariableModifierKind.Constant); var type = new TypeIdentifier(KeywordDictionary.KeywordToValueType[libraryConstant.Type]); var identifier = new Identifier(type.ValueKind, libraryConstant.Name); var initializer = Expression.FromText(libraryConstant.Value); return(new VariableDeclaration(modifier, type, identifier, initializer)); }
public ArrayVariableDeclaration(VariableModifier modifier, TypeIdentifier type, Identifier identifier, IntLiteral size, Expression initializer) : base(modifier, type, identifier, initializer) { Size = size; }