public ComplexValueAst( IdentifierToken value, IdentifierToken of, IdentifierToken typeName, PropertyValueListAst propertyValues ) { this.Alias = null; this.Value = value ?? throw new ArgumentException(nameof(value)); this.Of = of; this.TypeName = typeName; this.PropertyValues = propertyValues ?? new PropertyValueListAst.Builder().Build(); }
public StructureValueDeclarationAst( IdentifierToken value, IdentifierToken of, IdentifierToken typeName, IdentifierToken @as, AliasIdentifierToken alias, PropertyValueListAst propertyValues, StatementEndToken statementEnd ) { this.Value = value ?? throw new ArgumentNullException(nameof(value)); this.Of = of ?? throw new ArgumentNullException(nameof(of)); this.TypeName = typeName ?? throw new ArgumentNullException(nameof(typeName)); this.As = @as; this.Alias = alias; this.PropertyValues = propertyValues ?? new PropertyValueListAst( new ReadOnlyDictionary <string, PropertyValueAst>( new Dictionary <string, PropertyValueAst>() ) ); this.StatementEnd = statementEnd ?? throw new ArgumentNullException(nameof(statementEnd)); }