mirror of https://github.com/icsharpcode/ILSpy.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
4866 lines
120 KiB
4866 lines
120 KiB
//// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) |
|
//// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) |
|
//using System; |
|
//using System.Collections.Generic; |
|
// |
|
//namespace ICSharpCode.NRefactory.VB.Ast { |
|
// public class AddHandlerStatement : Statement { |
|
// |
|
// Expression eventExpression; |
|
// |
|
// Expression handlerExpression; |
|
// |
|
// public Expression EventExpression { |
|
// get { |
|
// return eventExpression; |
|
// } |
|
// set { |
|
// eventExpression = value ?? Expression.Null; |
|
// if (!eventExpression.IsNull) eventExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression HandlerExpression { |
|
// get { |
|
// return handlerExpression; |
|
// } |
|
// set { |
|
// handlerExpression = value ?? Expression.Null; |
|
// if (!handlerExpression.IsNull) handlerExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public AddHandlerStatement(Expression eventExpression, Expression handlerExpression) { |
|
// EventExpression = eventExpression; |
|
// HandlerExpression = handlerExpression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitAddHandlerStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[AddHandlerStatement EventExpression={0} HandlerExpression={1}]", EventExpression, HandlerExpression); |
|
// } |
|
// } |
|
// |
|
// public class AddressOfExpression : Expression { |
|
// |
|
// Expression expression; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public AddressOfExpression(Expression expression) { |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitAddressOfExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[AddressOfExpression Expression={0}]", Expression); |
|
// } |
|
// } |
|
// |
|
// public class ArrayCreateExpression : Expression { |
|
// |
|
// TypeReference createType; |
|
// |
|
// List<Expression> arguments; |
|
// |
|
// CollectionInitializerExpression arrayInitializer; |
|
// |
|
// public TypeReference CreateType { |
|
// get { |
|
// return createType; |
|
// } |
|
// set { |
|
// createType = value ?? TypeReference.Null; |
|
// if (!createType.IsNull) createType.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<Expression> Arguments { |
|
// get { |
|
// return arguments; |
|
// } |
|
// set { |
|
// arguments = value ?? new List<Expression>(); |
|
// } |
|
// } |
|
// |
|
// public CollectionInitializerExpression ArrayInitializer { |
|
// get { |
|
// return arrayInitializer; |
|
// } |
|
// set { |
|
// arrayInitializer = value ?? CollectionInitializerExpression.Null; |
|
// if (!arrayInitializer.IsNull) arrayInitializer.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ArrayCreateExpression(TypeReference createType) { |
|
// CreateType = createType; |
|
// arguments = new List<Expression>(); |
|
// arrayInitializer = CollectionInitializerExpression.Null; |
|
// } |
|
// |
|
// public ArrayCreateExpression(TypeReference createType, List<Expression> arguments) { |
|
// CreateType = createType; |
|
// Arguments = arguments; |
|
// arrayInitializer = CollectionInitializerExpression.Null; |
|
// } |
|
// |
|
// public ArrayCreateExpression(TypeReference createType, CollectionInitializerExpression arrayInitializer) { |
|
// CreateType = createType; |
|
// ArrayInitializer = arrayInitializer; |
|
// arguments = new List<Expression>(); |
|
// } |
|
// |
|
// public bool IsImplicitlyTyped { |
|
// get { |
|
// return createType.IsNull || string.IsNullOrEmpty(createType.Type); |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitArrayCreateExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ArrayCreateExpression CreateType={0} Arguments={1} ArrayInitializer={2}]", CreateType, GetCollectionString(Arguments), ArrayInitializer); |
|
// } |
|
// } |
|
// |
|
// public class AssignmentExpression : Expression { |
|
// |
|
// Expression left; |
|
// |
|
// AssignmentOperatorType op; |
|
// |
|
// Expression right; |
|
// |
|
// public Expression Left { |
|
// get { |
|
// return left; |
|
// } |
|
// set { |
|
// left = value ?? Expression.Null; |
|
// if (!left.IsNull) left.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public AssignmentOperatorType Op { |
|
// get { |
|
// return op; |
|
// } |
|
// set { |
|
// op = value; |
|
// } |
|
// } |
|
// |
|
// public Expression Right { |
|
// get { |
|
// return right; |
|
// } |
|
// set { |
|
// right = value ?? Expression.Null; |
|
// if (!right.IsNull) right.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public AssignmentExpression(Expression left, AssignmentOperatorType op, Expression right) { |
|
// Left = left; |
|
// Op = op; |
|
// Right = right; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitAssignmentExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[AssignmentExpression Left={0} Op={1} Right={2}]", Left, Op, Right); |
|
// } |
|
// } |
|
// |
|
// public abstract class AttributedNode : AbstractNode { |
|
// |
|
// List<AttributeSection> attributes; |
|
// |
|
// Modifiers modifier; |
|
// |
|
// public List<AttributeSection> Attributes { |
|
// get { |
|
// return attributes; |
|
// } |
|
// set { |
|
// attributes = value ?? new List<AttributeSection>(); |
|
// } |
|
// } |
|
// |
|
// public Modifiers Modifier { |
|
// get { |
|
// return modifier; |
|
// } |
|
// set { |
|
// modifier = value; |
|
// } |
|
// } |
|
// |
|
// protected AttributedNode() { |
|
// attributes = new List<AttributeSection>(); |
|
// } |
|
// |
|
// protected AttributedNode(List<AttributeSection> attributes) { |
|
// Attributes = attributes; |
|
// } |
|
// |
|
// protected AttributedNode(Modifiers modifier, List<AttributeSection> attributes) { |
|
// Modifier = modifier; |
|
// Attributes = attributes; |
|
// } |
|
// } |
|
// |
|
// public class AttributeSection : AbstractNode { |
|
// |
|
// string attributeTarget; |
|
// |
|
// List<ICSharpCode.NRefactory.VB.Ast.Attribute> attributes; |
|
// |
|
// public string AttributeTarget { |
|
// get { |
|
// return attributeTarget; |
|
// } |
|
// set { |
|
// attributeTarget = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public List<ICSharpCode.NRefactory.VB.Ast.Attribute> Attributes { |
|
// get { |
|
// return attributes; |
|
// } |
|
// set { |
|
// attributes = value ?? new List<Attribute>(); |
|
// } |
|
// } |
|
// |
|
// public AttributeSection() { |
|
// attributeTarget = ""; |
|
// attributes = new List<Attribute>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitAttributeSection(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[AttributeSection AttributeTarget={0} Attributes={1}]", AttributeTarget, GetCollectionString(Attributes)); |
|
// } |
|
// } |
|
// |
|
// public class BaseReferenceExpression : Expression { |
|
// |
|
// public BaseReferenceExpression() { |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitBaseReferenceExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[BaseReferenceExpression]"; |
|
// } |
|
// } |
|
// |
|
// public class BinaryOperatorExpression : Expression { |
|
// |
|
// Expression left; |
|
// |
|
// BinaryOperatorType op; |
|
// |
|
// Expression right; |
|
// |
|
// public Expression Left { |
|
// get { |
|
// return left; |
|
// } |
|
// set { |
|
// left = value ?? Expression.Null; |
|
// if (!left.IsNull) left.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public BinaryOperatorType Op { |
|
// get { |
|
// return op; |
|
// } |
|
// set { |
|
// op = value; |
|
// } |
|
// } |
|
// |
|
// public Expression Right { |
|
// get { |
|
// return right; |
|
// } |
|
// set { |
|
// right = value ?? Expression.Null; |
|
// if (!right.IsNull) right.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public BinaryOperatorExpression() { |
|
// left = Expression.Null; |
|
// right = Expression.Null; |
|
// } |
|
// |
|
// public BinaryOperatorExpression(Expression left, BinaryOperatorType op, Expression right) { |
|
// Left = left; |
|
// Op = op; |
|
// Right = right; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitBinaryOperatorExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[BinaryOperatorExpression Left={0} Op={1} Right={2}]", Left, Op, Right); |
|
// } |
|
// } |
|
// |
|
// public class CaseLabel : AbstractNode { |
|
// |
|
// Expression label; |
|
// |
|
// BinaryOperatorType binaryOperatorType; |
|
// |
|
// Expression toExpression; |
|
// |
|
// public Expression Label { |
|
// get { |
|
// return label; |
|
// } |
|
// set { |
|
// label = value ?? Expression.Null; |
|
// if (!label.IsNull) label.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public BinaryOperatorType BinaryOperatorType { |
|
// get { |
|
// return binaryOperatorType; |
|
// } |
|
// set { |
|
// binaryOperatorType = value; |
|
// } |
|
// } |
|
// |
|
// public Expression ToExpression { |
|
// get { |
|
// return toExpression; |
|
// } |
|
// set { |
|
// toExpression = value ?? Expression.Null; |
|
// if (!toExpression.IsNull) toExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public CaseLabel() { |
|
// label = Expression.Null; |
|
// toExpression = Expression.Null; |
|
// } |
|
// |
|
// public CaseLabel(Expression label) { |
|
// Label = label; |
|
// toExpression = Expression.Null; |
|
// } |
|
// |
|
// public CaseLabel(Expression label, Expression toExpression) { |
|
// Label = label; |
|
// ToExpression = toExpression; |
|
// } |
|
// |
|
// public CaseLabel(BinaryOperatorType binaryOperatorType, Expression label) { |
|
// BinaryOperatorType = binaryOperatorType; |
|
// Label = label; |
|
// toExpression = Expression.Null; |
|
// } |
|
// |
|
// public bool IsDefault { |
|
// get { |
|
// return label.IsNull; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitCaseLabel(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[CaseLabel Label={0} BinaryOperatorType={1} ToExpression={2}]", Label, BinaryOperatorType, ToExpression); |
|
// } |
|
// } |
|
// |
|
// public class CastExpression : Expression { |
|
// |
|
// TypeReference castTo; |
|
// |
|
// Expression expression; |
|
// |
|
// CastType castType; |
|
// |
|
// public TypeReference CastTo { |
|
// get { |
|
// return castTo; |
|
// } |
|
// set { |
|
// castTo = value ?? TypeReference.Null; |
|
// if (!castTo.IsNull) castTo.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public CastType CastType { |
|
// get { |
|
// return castType; |
|
// } |
|
// set { |
|
// castType = value; |
|
// } |
|
// } |
|
// |
|
// public CastExpression(TypeReference castTo) { |
|
// CastTo = castTo; |
|
// expression = Expression.Null; |
|
// } |
|
// |
|
// public CastExpression(TypeReference castTo, Expression expression, CastType castType) { |
|
// CastTo = castTo; |
|
// Expression = expression; |
|
// CastType = castType; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitCastExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[CastExpression CastTo={0} Expression={1} CastType={2}]", CastTo, Expression, CastType); |
|
// } |
|
// } |
|
// |
|
// public class CatchClause : AbstractNode { |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// string variableName; |
|
// |
|
// Statement statementBlock; |
|
// |
|
// Expression condition; |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public string VariableName { |
|
// get { |
|
// return variableName; |
|
// } |
|
// set { |
|
// variableName = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public Statement StatementBlock { |
|
// get { |
|
// return statementBlock; |
|
// } |
|
// set { |
|
// statementBlock = value ?? Statement.Null; |
|
// if (!statementBlock.IsNull) statementBlock.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression Condition { |
|
// get { |
|
// return condition; |
|
// } |
|
// set { |
|
// condition = value ?? Expression.Null; |
|
// if (!condition.IsNull) condition.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public CatchClause(TypeReference typeReference, string variableName, Statement statementBlock) { |
|
// TypeReference = typeReference; |
|
// VariableName = variableName; |
|
// StatementBlock = statementBlock; |
|
// condition = Expression.Null; |
|
// } |
|
// |
|
// public CatchClause(TypeReference typeReference, string variableName, Statement statementBlock, Expression condition) { |
|
// TypeReference = typeReference; |
|
// VariableName = variableName; |
|
// StatementBlock = statementBlock; |
|
// Condition = condition; |
|
// } |
|
// |
|
// public CatchClause(Statement statementBlock) { |
|
// StatementBlock = statementBlock; |
|
// typeReference = TypeReference.Null; |
|
// variableName = ""; |
|
// condition = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitCatchClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[CatchClause TypeReference={0} VariableName={1} StatementBlock={2} Condition={3}]" + |
|
// "", TypeReference, VariableName, StatementBlock, Condition); |
|
// } |
|
// } |
|
// |
|
// public class ClassReferenceExpression : Expression { |
|
// |
|
// public ClassReferenceExpression() { |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitClassReferenceExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[ClassReferenceExpression]"; |
|
// } |
|
// } |
|
// |
|
// public class CollectionInitializerExpression : Expression { |
|
// |
|
// List<Expression> createExpressions; |
|
// |
|
// public List<Expression> CreateExpressions { |
|
// get { |
|
// return createExpressions; |
|
// } |
|
// set { |
|
// createExpressions = value ?? new List<Expression>(); |
|
// } |
|
// } |
|
// |
|
// public CollectionInitializerExpression() { |
|
// createExpressions = new List<Expression>(); |
|
// } |
|
// |
|
// public CollectionInitializerExpression(List<Expression> createExpressions) { |
|
// CreateExpressions = createExpressions; |
|
// } |
|
// |
|
// public new static CollectionInitializerExpression Null { |
|
// get { |
|
// return NullCollectionInitializerExpression.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitCollectionInitializerExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[CollectionInitializerExpression CreateExpressions={0}]", GetCollectionString(CreateExpressions)); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullCollectionInitializerExpression : CollectionInitializerExpression { |
|
// |
|
// internal static NullCollectionInitializerExpression Instance = new NullCollectionInitializerExpression(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullCollectionInitializerExpression]"; |
|
// } |
|
// } |
|
// |
|
// public class CollectionRangeVariable : AbstractNode, INullable { |
|
// |
|
// string identifier; |
|
// |
|
// Expression expression; |
|
// |
|
// TypeReference type; |
|
// |
|
// public string Identifier { |
|
// get { |
|
// return identifier; |
|
// } |
|
// set { |
|
// identifier = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TypeReference Type { |
|
// get { |
|
// return type; |
|
// } |
|
// set { |
|
// type = value ?? TypeReference.Null; |
|
// if (!type.IsNull) type.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public CollectionRangeVariable() { |
|
// identifier = ""; |
|
// expression = Expression.Null; |
|
// type = TypeReference.Null; |
|
// } |
|
// |
|
// public virtual bool IsNull { |
|
// get { |
|
// return false; |
|
// } |
|
// } |
|
// |
|
// public static CollectionRangeVariable Null { |
|
// get { |
|
// return NullCollectionRangeVariable.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitCollectionRangeVariable(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[CollectionRangeVariable Identifier={0} Expression={1} Type={2}]", Identifier, Expression, Type); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullCollectionRangeVariable : CollectionRangeVariable { |
|
// |
|
// internal static NullCollectionRangeVariable Instance = new NullCollectionRangeVariable(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullCollectionRangeVariable]"; |
|
// } |
|
// } |
|
// |
|
// public class ConditionalExpression : Expression { |
|
// |
|
// Expression condition; |
|
// |
|
// Expression trueExpression; |
|
// |
|
// Expression falseExpression; |
|
// |
|
// public Expression Condition { |
|
// get { |
|
// return condition; |
|
// } |
|
// set { |
|
// condition = value ?? Expression.Null; |
|
// if (!condition.IsNull) condition.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression TrueExpression { |
|
// get { |
|
// return trueExpression; |
|
// } |
|
// set { |
|
// trueExpression = value ?? Expression.Null; |
|
// if (!trueExpression.IsNull) trueExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression FalseExpression { |
|
// get { |
|
// return falseExpression; |
|
// } |
|
// set { |
|
// falseExpression = value ?? Expression.Null; |
|
// if (!falseExpression.IsNull) falseExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ConditionalExpression() { |
|
// condition = Expression.Null; |
|
// trueExpression = Expression.Null; |
|
// falseExpression = Expression.Null; |
|
// } |
|
// |
|
// public ConditionalExpression(Expression condition, Expression trueExpression, Expression falseExpression) { |
|
// Condition = condition; |
|
// TrueExpression = trueExpression; |
|
// FalseExpression = falseExpression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitConditionalExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ConditionalExpression Condition={0} TrueExpression={1} FalseExpression={2}]", Condition, TrueExpression, FalseExpression); |
|
// } |
|
// } |
|
// |
|
// public class ConstructorDeclaration : ParametrizedNode { |
|
// |
|
// ConstructorInitializer constructorInitializer; |
|
// |
|
// BlockStatement body; |
|
// |
|
// public ConstructorInitializer ConstructorInitializer { |
|
// get { |
|
// return constructorInitializer; |
|
// } |
|
// set { |
|
// constructorInitializer = value ?? ConstructorInitializer.Null; |
|
// if (!constructorInitializer.IsNull) constructorInitializer.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public BlockStatement Body { |
|
// get { |
|
// return body; |
|
// } |
|
// set { |
|
// body = value ?? BlockStatement.Null; |
|
// if (!body.IsNull) body.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ConstructorDeclaration(string name, Modifiers modifier, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes) { |
|
// Name = name; |
|
// Modifier = modifier; |
|
// Parameters = parameters; |
|
// Attributes = attributes; |
|
// constructorInitializer = ConstructorInitializer.Null; |
|
// body = BlockStatement.Null; |
|
// } |
|
// |
|
// public ConstructorDeclaration(string name, Modifiers modifier, List<ParameterDeclarationExpression> parameters, ConstructorInitializer constructorInitializer, List<AttributeSection> attributes) { |
|
// Name = name; |
|
// Modifier = modifier; |
|
// Parameters = parameters; |
|
// ConstructorInitializer = constructorInitializer; |
|
// Attributes = attributes; |
|
// body = BlockStatement.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitConstructorDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ConstructorDeclaration ConstructorInitializer={0} Body={1} Name={2} Parameters={" + |
|
// "3} Attributes={4} Modifier={5}]", ConstructorInitializer, Body, Name, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class ConstructorInitializer : AbstractNode, INullable { |
|
// |
|
// ConstructorInitializerType constructorInitializerType; |
|
// |
|
// List<Expression> arguments; |
|
// |
|
// public ConstructorInitializerType ConstructorInitializerType { |
|
// get { |
|
// return constructorInitializerType; |
|
// } |
|
// set { |
|
// constructorInitializerType = value; |
|
// } |
|
// } |
|
// |
|
// public List<Expression> Arguments { |
|
// get { |
|
// return arguments; |
|
// } |
|
// set { |
|
// arguments = value ?? new List<Expression>(); |
|
// } |
|
// } |
|
// |
|
// public ConstructorInitializer() { |
|
// arguments = new List<Expression>(); |
|
// } |
|
// |
|
// public virtual bool IsNull { |
|
// get { |
|
// return false; |
|
// } |
|
// } |
|
// |
|
// public static ConstructorInitializer Null { |
|
// get { |
|
// return NullConstructorInitializer.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitConstructorInitializer(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ConstructorInitializer ConstructorInitializerType={0} Arguments={1}]", ConstructorInitializerType, GetCollectionString(Arguments)); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullConstructorInitializer : ConstructorInitializer { |
|
// |
|
// internal static NullConstructorInitializer Instance = new NullConstructorInitializer(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullConstructorInitializer]"; |
|
// } |
|
// } |
|
// |
|
// public class ContinueStatement : Statement { |
|
// |
|
// ContinueType continueType; |
|
// |
|
// public ContinueType ContinueType { |
|
// get { |
|
// return continueType; |
|
// } |
|
// set { |
|
// continueType = value; |
|
// } |
|
// } |
|
// |
|
// public ContinueStatement() { |
|
// } |
|
// |
|
// public ContinueStatement(ContinueType continueType) { |
|
// ContinueType = continueType; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitContinueStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ContinueStatement ContinueType={0}]", ContinueType); |
|
// } |
|
// } |
|
// |
|
// public class DeclareDeclaration : ParametrizedNode { |
|
// |
|
// string alias; |
|
// |
|
// string library; |
|
// |
|
// CharsetModifier charset; |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// public string Alias { |
|
// get { |
|
// return alias; |
|
// } |
|
// set { |
|
// alias = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public string Library { |
|
// get { |
|
// return library; |
|
// } |
|
// set { |
|
// library = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public CharsetModifier Charset { |
|
// get { |
|
// return charset; |
|
// } |
|
// set { |
|
// charset = value; |
|
// } |
|
// } |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public DeclareDeclaration(string name, Modifiers modifier, TypeReference typeReference, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes, string library, string alias, CharsetModifier charset) { |
|
// Name = name; |
|
// Modifier = modifier; |
|
// TypeReference = typeReference; |
|
// Parameters = parameters; |
|
// Attributes = attributes; |
|
// Library = library; |
|
// Alias = alias; |
|
// Charset = charset; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitDeclareDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[DeclareDeclaration Alias={0} Library={1} Charset={2} TypeReference={3} Name={4} " + |
|
// "Parameters={5} Attributes={6} Modifier={7}]", Alias, Library, Charset, TypeReference, Name, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class DefaultValueExpression : Expression { |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public DefaultValueExpression(TypeReference typeReference) { |
|
// TypeReference = typeReference; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitDefaultValueExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[DefaultValueExpression TypeReference={0}]", TypeReference); |
|
// } |
|
// } |
|
// |
|
// public class DelegateDeclaration : AttributedNode { |
|
// |
|
// string name; |
|
// |
|
// TypeReference returnType; |
|
// |
|
// List<ParameterDeclarationExpression> parameters; |
|
// |
|
// List<TemplateDefinition> templates; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = string.IsNullOrEmpty(value) ? "?" : value; |
|
// } |
|
// } |
|
// |
|
// public TypeReference ReturnType { |
|
// get { |
|
// return returnType; |
|
// } |
|
// set { |
|
// returnType = value ?? TypeReference.Null; |
|
// if (!returnType.IsNull) returnType.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<ParameterDeclarationExpression> Parameters { |
|
// get { |
|
// return parameters; |
|
// } |
|
// set { |
|
// parameters = value ?? new List<ParameterDeclarationExpression>(); |
|
// } |
|
// } |
|
// |
|
// public List<TemplateDefinition> Templates { |
|
// get { |
|
// return templates; |
|
// } |
|
// set { |
|
// templates = value ?? new List<TemplateDefinition>(); |
|
// } |
|
// } |
|
// |
|
// public DelegateDeclaration(Modifiers modifier, List<AttributeSection> attributes) { |
|
// Modifier = modifier; |
|
// Attributes = attributes; |
|
// name = "?"; |
|
// returnType = TypeReference.Null; |
|
// parameters = new List<ParameterDeclarationExpression>(); |
|
// templates = new List<TemplateDefinition>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitDelegateDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[DelegateDeclaration Name={0} ReturnType={1} Parameters={2} Templates={3} Attribu" + |
|
// "tes={4} Modifier={5}]", Name, ReturnType, GetCollectionString(Parameters), GetCollectionString(Templates), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class DirectionExpression : Expression { |
|
// |
|
// FieldDirection fieldDirection; |
|
// |
|
// Expression expression; |
|
// |
|
// public FieldDirection FieldDirection { |
|
// get { |
|
// return fieldDirection; |
|
// } |
|
// set { |
|
// fieldDirection = value; |
|
// } |
|
// } |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public DirectionExpression(FieldDirection fieldDirection, Expression expression) { |
|
// FieldDirection = fieldDirection; |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitDirectionExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[DirectionExpression FieldDirection={0} Expression={1}]", FieldDirection, Expression); |
|
// } |
|
// } |
|
// |
|
// public class DoLoopStatement : StatementWithEmbeddedStatement { |
|
// |
|
// Expression condition; |
|
// |
|
// ConditionType conditionType; |
|
// |
|
// ConditionPosition conditionPosition; |
|
// |
|
// public Expression Condition { |
|
// get { |
|
// return condition; |
|
// } |
|
// set { |
|
// condition = value ?? Expression.Null; |
|
// if (!condition.IsNull) condition.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ConditionType ConditionType { |
|
// get { |
|
// return conditionType; |
|
// } |
|
// set { |
|
// conditionType = value; |
|
// } |
|
// } |
|
// |
|
// public ConditionPosition ConditionPosition { |
|
// get { |
|
// return conditionPosition; |
|
// } |
|
// set { |
|
// conditionPosition = value; |
|
// } |
|
// } |
|
// |
|
// public DoLoopStatement(Expression condition, Statement embeddedStatement, ConditionType conditionType, ConditionPosition conditionPosition) { |
|
// Condition = condition; |
|
// EmbeddedStatement = embeddedStatement; |
|
// ConditionType = conditionType; |
|
// ConditionPosition = conditionPosition; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitDoLoopStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[DoLoopStatement Condition={0} ConditionType={1} ConditionPosition={2} EmbeddedSt" + |
|
// "atement={3}]", Condition, ConditionType, ConditionPosition, EmbeddedStatement); |
|
// } |
|
// } |
|
// |
|
// public class ElseIfSection : StatementWithEmbeddedStatement { |
|
// |
|
// Expression condition; |
|
// |
|
// public Expression Condition { |
|
// get { |
|
// return condition; |
|
// } |
|
// set { |
|
// condition = value ?? Expression.Null; |
|
// if (!condition.IsNull) condition.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ElseIfSection(Expression condition, Statement embeddedStatement) { |
|
// Condition = condition; |
|
// EmbeddedStatement = embeddedStatement; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitElseIfSection(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ElseIfSection Condition={0} EmbeddedStatement={1}]", Condition, EmbeddedStatement); |
|
// } |
|
// } |
|
// |
|
// public class EndStatement : Statement { |
|
// |
|
// public EndStatement() { |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitEndStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[EndStatement]"; |
|
// } |
|
// } |
|
// |
|
// public class EraseStatement : Statement { |
|
// |
|
// List<Expression> expressions; |
|
// |
|
// public List<Expression> Expressions { |
|
// get { |
|
// return expressions; |
|
// } |
|
// set { |
|
// expressions = value ?? new List<Expression>(); |
|
// } |
|
// } |
|
// |
|
// public EraseStatement() { |
|
// expressions = new List<Expression>(); |
|
// } |
|
// |
|
// public EraseStatement(List<Expression> expressions) { |
|
// Expressions = expressions; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitEraseStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[EraseStatement Expressions={0}]", GetCollectionString(Expressions)); |
|
// } |
|
// } |
|
// |
|
// public class ErrorStatement : Statement { |
|
// |
|
// Expression expression; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ErrorStatement(Expression expression) { |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitErrorStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ErrorStatement Expression={0}]", Expression); |
|
// } |
|
// } |
|
// |
|
// public class EventAddRegion : EventAddRemoveRegion { |
|
// |
|
// public EventAddRegion(List<AttributeSection> attributes) : |
|
// base(attributes) { |
|
// } |
|
// |
|
// public static EventAddRegion Null { |
|
// get { |
|
// return NullEventAddRegion.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitEventAddRegion(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[EventAddRegion Block={0} Parameters={1} Attributes={2} Modifier={3}]", Block, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullEventAddRegion : EventAddRegion { |
|
// |
|
// private NullEventAddRegion() : |
|
// base(null) { |
|
// } |
|
// |
|
// internal static NullEventAddRegion Instance = new NullEventAddRegion(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullEventAddRegion]"; |
|
// } |
|
// } |
|
// |
|
// public abstract class EventAddRemoveRegion : AttributedNode, INullable { |
|
// |
|
// BlockStatement block; |
|
// |
|
// List<ParameterDeclarationExpression> parameters; |
|
// |
|
// public BlockStatement Block { |
|
// get { |
|
// return block; |
|
// } |
|
// set { |
|
// block = value ?? BlockStatement.Null; |
|
// if (!block.IsNull) block.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<ParameterDeclarationExpression> Parameters { |
|
// get { |
|
// return parameters; |
|
// } |
|
// set { |
|
// parameters = value ?? new List<ParameterDeclarationExpression>(); |
|
// } |
|
// } |
|
// |
|
// protected EventAddRemoveRegion(List<AttributeSection> attributes) { |
|
// Attributes = attributes; |
|
// block = BlockStatement.Null; |
|
// parameters = new List<ParameterDeclarationExpression>(); |
|
// } |
|
// |
|
// public virtual bool IsNull { |
|
// get { |
|
// return false; |
|
// } |
|
// } |
|
// } |
|
// |
|
// public class EventDeclaration : MemberNode { |
|
// |
|
// EventAddRegion addRegion; |
|
// |
|
// EventRemoveRegion removeRegion; |
|
// |
|
// EventRaiseRegion raiseRegion; |
|
// |
|
// Location bodyStart; |
|
// |
|
// Location bodyEnd; |
|
// |
|
// Expression initializer; |
|
// |
|
// public EventAddRegion AddRegion { |
|
// get { |
|
// return addRegion; |
|
// } |
|
// set { |
|
// addRegion = value ?? EventAddRegion.Null; |
|
// if (!addRegion.IsNull) addRegion.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public EventRemoveRegion RemoveRegion { |
|
// get { |
|
// return removeRegion; |
|
// } |
|
// set { |
|
// removeRegion = value ?? EventRemoveRegion.Null; |
|
// if (!removeRegion.IsNull) removeRegion.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public EventRaiseRegion RaiseRegion { |
|
// get { |
|
// return raiseRegion; |
|
// } |
|
// set { |
|
// raiseRegion = value ?? EventRaiseRegion.Null; |
|
// if (!raiseRegion.IsNull) raiseRegion.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Location BodyStart { |
|
// get { |
|
// return bodyStart; |
|
// } |
|
// set { |
|
// bodyStart = value; |
|
// } |
|
// } |
|
// |
|
// public Location BodyEnd { |
|
// get { |
|
// return bodyEnd; |
|
// } |
|
// set { |
|
// bodyEnd = value; |
|
// } |
|
// } |
|
// |
|
// public Expression Initializer { |
|
// get { |
|
// return initializer; |
|
// } |
|
// set { |
|
// initializer = value ?? Expression.Null; |
|
// if (!initializer.IsNull) initializer.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public EventDeclaration() { |
|
// addRegion = EventAddRegion.Null; |
|
// removeRegion = EventRemoveRegion.Null; |
|
// raiseRegion = EventRaiseRegion.Null; |
|
// bodyStart = Location.Empty; |
|
// bodyEnd = Location.Empty; |
|
// initializer = Expression.Null; |
|
// } |
|
// |
|
// public bool HasAddRegion { |
|
// get { |
|
// return !addRegion.IsNull; |
|
// } |
|
// } |
|
// |
|
// public bool HasRemoveRegion { |
|
// get { |
|
// return !removeRegion.IsNull; |
|
// } |
|
// } |
|
// |
|
// public bool HasRaiseRegion { |
|
// get { |
|
// return !raiseRegion.IsNull; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitEventDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[EventDeclaration AddRegion={0} RemoveRegion={1} RaiseRegion={2} BodyStart={3} Bo" + |
|
// "dyEnd={4} Initializer={5} InterfaceImplementations={6} TypeReference={7} Name={8" + |
|
// "} Parameters={9} Attributes={10} Modifier={11}]", AddRegion, RemoveRegion, RaiseRegion, BodyStart, BodyEnd, Initializer, GetCollectionString(InterfaceImplementations), TypeReference, Name, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class EventRaiseRegion : EventAddRemoveRegion { |
|
// |
|
// public EventRaiseRegion(List<AttributeSection> attributes) : |
|
// base(attributes) { |
|
// } |
|
// |
|
// public static EventRaiseRegion Null { |
|
// get { |
|
// return NullEventRaiseRegion.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitEventRaiseRegion(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[EventRaiseRegion Block={0} Parameters={1} Attributes={2} Modifier={3}]", Block, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullEventRaiseRegion : EventRaiseRegion { |
|
// |
|
// private NullEventRaiseRegion() : |
|
// base(null) { |
|
// } |
|
// |
|
// internal static NullEventRaiseRegion Instance = new NullEventRaiseRegion(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullEventRaiseRegion]"; |
|
// } |
|
// } |
|
// |
|
// public class EventRemoveRegion : EventAddRemoveRegion { |
|
// |
|
// public EventRemoveRegion(List<AttributeSection> attributes) : |
|
// base(attributes) { |
|
// } |
|
// |
|
// public static EventRemoveRegion Null { |
|
// get { |
|
// return NullEventRemoveRegion.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitEventRemoveRegion(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[EventRemoveRegion Block={0} Parameters={1} Attributes={2} Modifier={3}]", Block, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullEventRemoveRegion : EventRemoveRegion { |
|
// |
|
// private NullEventRemoveRegion() : |
|
// base(null) { |
|
// } |
|
// |
|
// internal static NullEventRemoveRegion Instance = new NullEventRemoveRegion(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullEventRemoveRegion]"; |
|
// } |
|
// } |
|
// |
|
// public class ExitStatement : Statement { |
|
// |
|
// ExitType exitType; |
|
// |
|
// public ExitType ExitType { |
|
// get { |
|
// return exitType; |
|
// } |
|
// set { |
|
// exitType = value; |
|
// } |
|
// } |
|
// |
|
// public ExitStatement(ExitType exitType) { |
|
// ExitType = exitType; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitExitStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ExitStatement ExitType={0}]", ExitType); |
|
// } |
|
// } |
|
// |
|
// public class ExpressionRangeVariable : AbstractNode, INullable { |
|
// |
|
// string identifier; |
|
// |
|
// Expression expression; |
|
// |
|
// TypeReference type; |
|
// |
|
// public string Identifier { |
|
// get { |
|
// return identifier; |
|
// } |
|
// set { |
|
// identifier = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TypeReference Type { |
|
// get { |
|
// return type; |
|
// } |
|
// set { |
|
// type = value ?? TypeReference.Null; |
|
// if (!type.IsNull) type.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ExpressionRangeVariable() { |
|
// identifier = ""; |
|
// expression = Expression.Null; |
|
// type = TypeReference.Null; |
|
// } |
|
// |
|
// public virtual bool IsNull { |
|
// get { |
|
// return false; |
|
// } |
|
// } |
|
// |
|
// public static ExpressionRangeVariable Null { |
|
// get { |
|
// return NullExpressionRangeVariable.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitExpressionRangeVariable(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ExpressionRangeVariable Identifier={0} Expression={1} Type={2}]", Identifier, Expression, Type); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullExpressionRangeVariable : ExpressionRangeVariable { |
|
// |
|
// internal static NullExpressionRangeVariable Instance = new NullExpressionRangeVariable(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullExpressionRangeVariable]"; |
|
// } |
|
// } |
|
// |
|
// public class ExpressionStatement : Statement { |
|
// |
|
// Expression expression; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ExpressionStatement(Expression expression) { |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitExpressionStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ExpressionStatement Expression={0}]", Expression); |
|
// } |
|
// } |
|
// |
|
// public class ExternAliasDirective : AbstractNode { |
|
// |
|
// string name; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public ExternAliasDirective() { |
|
// name = ""; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitExternAliasDirective(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ExternAliasDirective Name={0}]", Name); |
|
// } |
|
// } |
|
// |
|
// public class FieldDeclaration : AttributedNode { |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// List<VariableDeclaration> fields; |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<VariableDeclaration> Fields { |
|
// get { |
|
// return fields; |
|
// } |
|
// set { |
|
// fields = value ?? new List<VariableDeclaration>(); |
|
// } |
|
// } |
|
// |
|
// public FieldDeclaration(List<AttributeSection> attributes) { |
|
// Attributes = attributes; |
|
// typeReference = TypeReference.Null; |
|
// fields = new List<VariableDeclaration>(); |
|
// } |
|
// |
|
// public FieldDeclaration(List<AttributeSection> attributes, TypeReference typeReference, Modifiers modifier) { |
|
// Attributes = attributes; |
|
// TypeReference = typeReference; |
|
// Modifier = modifier; |
|
// fields = new List<VariableDeclaration>(); |
|
// } |
|
// |
|
// |
|
// public TypeReference GetTypeForField(int fieldIndex) |
|
// { |
|
// if (!typeReference.IsNull) { |
|
// return typeReference; |
|
// } |
|
// return ((VariableDeclaration)Fields[fieldIndex]).TypeReference; |
|
// } |
|
// |
|
// |
|
// public VariableDeclaration GetVariableDeclaration(string variableName) |
|
// { |
|
// foreach (VariableDeclaration variableDeclaration in Fields) { |
|
// if (variableDeclaration.Name == variableName) { |
|
// return variableDeclaration; |
|
// } |
|
// } |
|
// return null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitFieldDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[FieldDeclaration TypeReference={0} Fields={1} Attributes={2} Modifier={3}]", TypeReference, GetCollectionString(Fields), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class ForeachStatement : StatementWithEmbeddedStatement { |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// string variableName; |
|
// |
|
// Expression expression; |
|
// |
|
// Expression nextExpression; |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public string VariableName { |
|
// get { |
|
// return variableName; |
|
// } |
|
// set { |
|
// variableName = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression NextExpression { |
|
// get { |
|
// return nextExpression; |
|
// } |
|
// set { |
|
// nextExpression = value ?? Expression.Null; |
|
// if (!nextExpression.IsNull) nextExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ForeachStatement(TypeReference typeReference, string variableName, Expression expression, Statement embeddedStatement) { |
|
// TypeReference = typeReference; |
|
// VariableName = variableName; |
|
// Expression = expression; |
|
// EmbeddedStatement = embeddedStatement; |
|
// nextExpression = Expression.Null; |
|
// } |
|
// |
|
// public ForeachStatement(TypeReference typeReference, string variableName, Expression expression, Statement embeddedStatement, Expression nextExpression) { |
|
// TypeReference = typeReference; |
|
// VariableName = variableName; |
|
// Expression = expression; |
|
// EmbeddedStatement = embeddedStatement; |
|
// NextExpression = nextExpression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitForeachStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ForeachStatement TypeReference={0} VariableName={1} Expression={2} NextExpressio" + |
|
// "n={3} EmbeddedStatement={4}]", TypeReference, VariableName, Expression, NextExpression, EmbeddedStatement); |
|
// } |
|
// } |
|
// |
|
// public class ForNextStatement : StatementWithEmbeddedStatement { |
|
// |
|
// Expression start; |
|
// |
|
// Expression end; |
|
// |
|
// Expression step; |
|
// |
|
// List<Expression> nextExpressions; |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// string variableName; |
|
// |
|
// Expression loopVariableExpression; |
|
// |
|
// public Expression Start { |
|
// get { |
|
// return start; |
|
// } |
|
// set { |
|
// start = value ?? Expression.Null; |
|
// if (!start.IsNull) start.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression End { |
|
// get { |
|
// return end; |
|
// } |
|
// set { |
|
// end = value ?? Expression.Null; |
|
// if (!end.IsNull) end.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression Step { |
|
// get { |
|
// return step; |
|
// } |
|
// set { |
|
// step = value ?? Expression.Null; |
|
// if (!step.IsNull) step.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<Expression> NextExpressions { |
|
// get { |
|
// return nextExpressions; |
|
// } |
|
// set { |
|
// nextExpressions = value ?? new List<Expression>(); |
|
// } |
|
// } |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public string VariableName { |
|
// get { |
|
// return variableName; |
|
// } |
|
// set { |
|
// variableName = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public Expression LoopVariableExpression { |
|
// get { |
|
// return loopVariableExpression; |
|
// } |
|
// set { |
|
// loopVariableExpression = value ?? Expression.Null; |
|
// if (!loopVariableExpression.IsNull) loopVariableExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ForNextStatement() { |
|
// start = Expression.Null; |
|
// end = Expression.Null; |
|
// step = Expression.Null; |
|
// nextExpressions = new List<Expression>(); |
|
// typeReference = TypeReference.Null; |
|
// variableName = ""; |
|
// loopVariableExpression = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitForNextStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ForNextStatement Start={0} End={1} Step={2} NextExpressions={3} TypeReference={4" + |
|
// "} VariableName={5} LoopVariableExpression={6} EmbeddedStatement={7}]", Start, End, Step, GetCollectionString(NextExpressions), TypeReference, VariableName, LoopVariableExpression, EmbeddedStatement); |
|
// } |
|
// } |
|
// |
|
// public class GotoStatement : Statement { |
|
// |
|
// string label; |
|
// |
|
// public string Label { |
|
// get { |
|
// return label; |
|
// } |
|
// set { |
|
// label = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public GotoStatement(string label) { |
|
// Label = label; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitGotoStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[GotoStatement Label={0}]", Label); |
|
// } |
|
// } |
|
// |
|
// public class IfElseStatement : Statement { |
|
// |
|
// Expression condition; |
|
// |
|
// List<Statement> trueStatement; |
|
// |
|
// List<Statement> falseStatement; |
|
// |
|
// List<ElseIfSection> elseIfSections; |
|
// |
|
// public Expression Condition { |
|
// get { |
|
// return condition; |
|
// } |
|
// set { |
|
// condition = value ?? Expression.Null; |
|
// if (!condition.IsNull) condition.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<Statement> TrueStatement { |
|
// get { |
|
// return trueStatement; |
|
// } |
|
// set { |
|
// trueStatement = value ?? new List<Statement>(); |
|
// } |
|
// } |
|
// |
|
// public List<Statement> FalseStatement { |
|
// get { |
|
// return falseStatement; |
|
// } |
|
// set { |
|
// falseStatement = value ?? new List<Statement>(); |
|
// } |
|
// } |
|
// |
|
// public List<ElseIfSection> ElseIfSections { |
|
// get { |
|
// return elseIfSections; |
|
// } |
|
// set { |
|
// elseIfSections = value ?? new List<ElseIfSection>(); |
|
// } |
|
// } |
|
// |
|
// public IfElseStatement(Expression condition) { |
|
// Condition = condition; |
|
// trueStatement = new List<Statement>(); |
|
// falseStatement = new List<Statement>(); |
|
// elseIfSections = new List<ElseIfSection>(); |
|
// } |
|
// |
|
// |
|
// public IfElseStatement(Expression condition, Statement trueStatement) |
|
// : this(condition) { |
|
// this.trueStatement.Add(Statement.CheckNull(trueStatement)); |
|
// if (trueStatement != null) trueStatement.Parent = this; |
|
// } |
|
// |
|
// public bool HasElseStatements { |
|
// get { |
|
// return falseStatement.Count > 0; |
|
// } |
|
// } |
|
// |
|
// public bool HasElseIfSections { |
|
// get { |
|
// return elseIfSections.Count > 0; |
|
// } |
|
// } |
|
// |
|
// |
|
// public IfElseStatement(Expression condition, Statement trueStatement, Statement falseStatement) |
|
// : this(condition) { |
|
// this.trueStatement.Add(Statement.CheckNull(trueStatement)); |
|
// this.falseStatement.Add(Statement.CheckNull(falseStatement)); |
|
// if (trueStatement != null) trueStatement.Parent = this; |
|
// if (falseStatement != null) falseStatement.Parent = this; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitIfElseStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[IfElseStatement Condition={0} TrueStatement={1} FalseStatement={2} ElseIfSection" + |
|
// "s={3}]", Condition, GetCollectionString(TrueStatement), GetCollectionString(FalseStatement), GetCollectionString(ElseIfSections)); |
|
// } |
|
// } |
|
// |
|
// public class InterfaceImplementation : AbstractNode { |
|
// |
|
// TypeReference interfaceType; |
|
// |
|
// string memberName; |
|
// |
|
// public TypeReference InterfaceType { |
|
// get { |
|
// return interfaceType; |
|
// } |
|
// set { |
|
// interfaceType = value ?? TypeReference.Null; |
|
// if (!interfaceType.IsNull) interfaceType.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public string MemberName { |
|
// get { |
|
// return memberName; |
|
// } |
|
// set { |
|
// memberName = string.IsNullOrEmpty(value) ? "?" : value; |
|
// } |
|
// } |
|
// |
|
// public InterfaceImplementation(TypeReference interfaceType, string memberName) { |
|
// InterfaceType = interfaceType; |
|
// MemberName = memberName; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitInterfaceImplementation(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[InterfaceImplementation InterfaceType={0} MemberName={1}]", InterfaceType, MemberName); |
|
// } |
|
// } |
|
// |
|
// public class InvocationExpression : Expression { |
|
// |
|
// Expression targetObject; |
|
// |
|
// List<Expression> arguments; |
|
// |
|
// public Expression TargetObject { |
|
// get { |
|
// return targetObject; |
|
// } |
|
// set { |
|
// targetObject = value ?? Expression.Null; |
|
// if (!targetObject.IsNull) targetObject.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<Expression> Arguments { |
|
// get { |
|
// return arguments; |
|
// } |
|
// set { |
|
// arguments = value ?? new List<Expression>(); |
|
// } |
|
// } |
|
// |
|
// public InvocationExpression(Expression targetObject) { |
|
// TargetObject = targetObject; |
|
// arguments = new List<Expression>(); |
|
// } |
|
// |
|
// public InvocationExpression(Expression targetObject, List<Expression> arguments) { |
|
// TargetObject = targetObject; |
|
// Arguments = arguments; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitInvocationExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[InvocationExpression TargetObject={0} Arguments={1}]", TargetObject, GetCollectionString(Arguments)); |
|
// } |
|
// } |
|
// |
|
// public class LabelStatement : Statement { |
|
// |
|
// string label; |
|
// |
|
// public string Label { |
|
// get { |
|
// return label; |
|
// } |
|
// set { |
|
// label = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public LabelStatement(string label) { |
|
// Label = label; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitLabelStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[LabelStatement Label={0}]", Label); |
|
// } |
|
// } |
|
// |
|
// public class LambdaExpression : Expression { |
|
// |
|
// List<ParameterDeclarationExpression> parameters; |
|
// |
|
// Statement statementBody; |
|
// |
|
// Expression expressionBody; |
|
// |
|
// TypeReference returnType; |
|
// |
|
// public List<ParameterDeclarationExpression> Parameters { |
|
// get { |
|
// return parameters; |
|
// } |
|
// set { |
|
// parameters = value ?? new List<ParameterDeclarationExpression>(); |
|
// } |
|
// } |
|
// |
|
// public Statement StatementBody { |
|
// get { |
|
// return statementBody; |
|
// } |
|
// set { |
|
// statementBody = value ?? Statement.Null; |
|
// if (!statementBody.IsNull) statementBody.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression ExpressionBody { |
|
// get { |
|
// return expressionBody; |
|
// } |
|
// set { |
|
// expressionBody = value ?? Expression.Null; |
|
// if (!expressionBody.IsNull) expressionBody.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TypeReference ReturnType { |
|
// get { |
|
// return returnType; |
|
// } |
|
// set { |
|
// returnType = value ?? TypeReference.Null; |
|
// if (!returnType.IsNull) returnType.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public LambdaExpression() { |
|
// parameters = new List<ParameterDeclarationExpression>(); |
|
// statementBody = Statement.Null; |
|
// expressionBody = Expression.Null; |
|
// returnType = TypeReference.Null; |
|
// } |
|
// |
|
// public Location ExtendedEndLocation { get; set; } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitLambdaExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[LambdaExpression Parameters={0} StatementBody={1} ExpressionBody={2} ReturnType=" + |
|
// "{3}]", GetCollectionString(Parameters), StatementBody, ExpressionBody, ReturnType); |
|
// } |
|
// } |
|
// |
|
// public class LockStatement : StatementWithEmbeddedStatement { |
|
// |
|
// Expression lockExpression; |
|
// |
|
// public Expression LockExpression { |
|
// get { |
|
// return lockExpression; |
|
// } |
|
// set { |
|
// lockExpression = value ?? Expression.Null; |
|
// if (!lockExpression.IsNull) lockExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public LockStatement(Expression lockExpression, Statement embeddedStatement) { |
|
// LockExpression = lockExpression; |
|
// EmbeddedStatement = embeddedStatement; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitLockStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[LockStatement LockExpression={0} EmbeddedStatement={1}]", LockExpression, EmbeddedStatement); |
|
// } |
|
// } |
|
// |
|
// public class MemberInitializerExpression : Expression { |
|
// |
|
// string name; |
|
// |
|
// bool isKey; |
|
// |
|
// Expression expression; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public bool IsKey { |
|
// get { |
|
// return isKey; |
|
// } |
|
// set { |
|
// isKey = value; |
|
// } |
|
// } |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public MemberInitializerExpression() { |
|
// name = ""; |
|
// expression = Expression.Null; |
|
// } |
|
// |
|
// public MemberInitializerExpression(string name, Expression expression) { |
|
// Name = name; |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitMemberInitializerExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[MemberInitializerExpression Name={0} IsKey={1} Expression={2}]", Name, IsKey, Expression); |
|
// } |
|
// } |
|
// |
|
// public abstract class MemberNode : ParametrizedNode { |
|
// |
|
// List<InterfaceImplementation> interfaceImplementations; |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// public List<InterfaceImplementation> InterfaceImplementations { |
|
// get { |
|
// return interfaceImplementations; |
|
// } |
|
// set { |
|
// interfaceImplementations = value ?? new List<InterfaceImplementation>(); |
|
// } |
|
// } |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// protected MemberNode() { |
|
// interfaceImplementations = new List<InterfaceImplementation>(); |
|
// typeReference = TypeReference.Null; |
|
// } |
|
// |
|
// protected MemberNode(Modifiers modifier, List<AttributeSection> attributes, string name, List<ParameterDeclarationExpression> parameters) { |
|
// Modifier = modifier; |
|
// Attributes = attributes; |
|
// Name = name; |
|
// Parameters = parameters; |
|
// interfaceImplementations = new List<InterfaceImplementation>(); |
|
// typeReference = TypeReference.Null; |
|
// } |
|
// } |
|
// |
|
// public class MemberReferenceExpression : Expression { |
|
// |
|
// Expression targetObject; |
|
// |
|
// string memberName; |
|
// |
|
// List<TypeReference> typeArguments; |
|
// |
|
// public Expression TargetObject { |
|
// get { |
|
// return targetObject; |
|
// } |
|
// set { |
|
// targetObject = value ?? Expression.Null; |
|
// if (!targetObject.IsNull) targetObject.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public string MemberName { |
|
// get { |
|
// return memberName; |
|
// } |
|
// set { |
|
// memberName = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public List<TypeReference> TypeArguments { |
|
// get { |
|
// return typeArguments; |
|
// } |
|
// set { |
|
// typeArguments = value ?? new List<TypeReference>(); |
|
// } |
|
// } |
|
// |
|
// public MemberReferenceExpression(Expression targetObject, string memberName) { |
|
// TargetObject = targetObject; |
|
// MemberName = memberName; |
|
// typeArguments = new List<TypeReference>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitMemberReferenceExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[MemberReferenceExpression TargetObject={0} MemberName={1} TypeArguments={2}]", TargetObject, MemberName, GetCollectionString(TypeArguments)); |
|
// } |
|
// } |
|
// |
|
// public class MethodDeclaration : MemberNode { |
|
// |
|
// BlockStatement body; |
|
// |
|
// List<string> handlesClause; |
|
// |
|
// List<TemplateDefinition> templates; |
|
// |
|
// bool isExtensionMethod; |
|
// |
|
// public BlockStatement Body { |
|
// get { |
|
// return body; |
|
// } |
|
// set { |
|
// body = value ?? BlockStatement.Null; |
|
// if (!body.IsNull) body.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<string> HandlesClause { |
|
// get { |
|
// return handlesClause; |
|
// } |
|
// set { |
|
// handlesClause = value ?? new List<String>(); |
|
// } |
|
// } |
|
// |
|
// public List<TemplateDefinition> Templates { |
|
// get { |
|
// return templates; |
|
// } |
|
// set { |
|
// templates = value ?? new List<TemplateDefinition>(); |
|
// } |
|
// } |
|
// |
|
// public bool IsExtensionMethod { |
|
// get { |
|
// return isExtensionMethod; |
|
// } |
|
// set { |
|
// isExtensionMethod = value; |
|
// } |
|
// } |
|
// |
|
// public MethodDeclaration() { |
|
// body = BlockStatement.Null; |
|
// handlesClause = new List<String>(); |
|
// templates = new List<TemplateDefinition>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitMethodDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[MethodDeclaration Body={0} HandlesClause={1} Templates={2} IsExtensionMethod={3}" + |
|
// " InterfaceImplementations={4} TypeReference={5} Name={6} Parameters={7} Attribut" + |
|
// "es={8} Modifier={9}]", Body, GetCollectionString(HandlesClause), GetCollectionString(Templates), IsExtensionMethod, GetCollectionString(InterfaceImplementations), TypeReference, Name, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class NamedArgumentExpression : Expression { |
|
// |
|
// string name; |
|
// |
|
// Expression expression; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public NamedArgumentExpression() { |
|
// name = ""; |
|
// expression = Expression.Null; |
|
// } |
|
// |
|
// public NamedArgumentExpression(string name, Expression expression) { |
|
// Name = name; |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitNamedArgumentExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[NamedArgumentExpression Name={0} Expression={1}]", Name, Expression); |
|
// } |
|
// } |
|
// |
|
// public class NamespaceDeclaration : AbstractNode { |
|
// |
|
// string name; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public NamespaceDeclaration(string name) { |
|
// Name = name; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitNamespaceDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[NamespaceDeclaration Name={0}]", Name); |
|
// } |
|
// } |
|
// |
|
// public class ObjectCreateExpression : Expression { |
|
// |
|
// TypeReference createType; |
|
// |
|
// List<Expression> parameters; |
|
// |
|
// CollectionInitializerExpression objectInitializer; |
|
// |
|
// public TypeReference CreateType { |
|
// get { |
|
// return createType; |
|
// } |
|
// set { |
|
// createType = value ?? TypeReference.Null; |
|
// if (!createType.IsNull) createType.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<Expression> Parameters { |
|
// get { |
|
// return parameters; |
|
// } |
|
// set { |
|
// parameters = value ?? new List<Expression>(); |
|
// } |
|
// } |
|
// |
|
// public CollectionInitializerExpression ObjectInitializer { |
|
// get { |
|
// return objectInitializer; |
|
// } |
|
// set { |
|
// objectInitializer = value ?? CollectionInitializerExpression.Null; |
|
// if (!objectInitializer.IsNull) objectInitializer.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ObjectCreateExpression(TypeReference createType, List<Expression> parameters) { |
|
// CreateType = createType; |
|
// Parameters = parameters; |
|
// objectInitializer = CollectionInitializerExpression.Null; |
|
// } |
|
// |
|
// public bool IsAnonymousType { |
|
// get { |
|
// return createType.IsNull || string.IsNullOrEmpty(createType.Type); |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitObjectCreateExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ObjectCreateExpression CreateType={0} Parameters={1} ObjectInitializer={2}]", CreateType, GetCollectionString(Parameters), ObjectInitializer); |
|
// } |
|
// } |
|
// |
|
// public class OnErrorStatement : StatementWithEmbeddedStatement { |
|
// |
|
// public OnErrorStatement(Statement embeddedStatement) { |
|
// EmbeddedStatement = embeddedStatement; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitOnErrorStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[OnErrorStatement EmbeddedStatement={0}]", EmbeddedStatement); |
|
// } |
|
// } |
|
// |
|
// public class OperatorDeclaration : MethodDeclaration { |
|
// |
|
// ConversionType conversionType; |
|
// |
|
// OverloadableOperatorType overloadableOperator; |
|
// |
|
// public ConversionType ConversionType { |
|
// get { |
|
// return conversionType; |
|
// } |
|
// set { |
|
// conversionType = value; |
|
// } |
|
// } |
|
// |
|
// public OverloadableOperatorType OverloadableOperator { |
|
// get { |
|
// return overloadableOperator; |
|
// } |
|
// set { |
|
// overloadableOperator = value; |
|
// } |
|
// } |
|
// |
|
// public OperatorDeclaration() { |
|
// } |
|
// |
|
// public bool IsConversionOperator { |
|
// get { |
|
// return conversionType != ConversionType.None; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitOperatorDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[OperatorDeclaration ConversionType={0} OverloadableOperator={1} Body={2} Handles" + |
|
// "Clause={3} Templates={4} IsExtensionMethod={5} InterfaceImplementations={6} Type" + |
|
// "Reference={7} Name={8} Parameters={9} Attributes={10} Modifier={11}]", ConversionType, OverloadableOperator, Body, GetCollectionString(HandlesClause), GetCollectionString(Templates), IsExtensionMethod, GetCollectionString(InterfaceImplementations), TypeReference, Name, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class ParameterDeclarationExpression : Expression { |
|
// |
|
// List<AttributeSection> attributes; |
|
// |
|
// string parameterName; |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// ParameterModifiers paramModifier; |
|
// |
|
// Expression defaultValue; |
|
// |
|
// public List<AttributeSection> Attributes { |
|
// get { |
|
// return attributes; |
|
// } |
|
// set { |
|
// attributes = value ?? new List<AttributeSection>(); |
|
// } |
|
// } |
|
// |
|
// public string ParameterName { |
|
// get { |
|
// return parameterName; |
|
// } |
|
// set { |
|
// parameterName = string.IsNullOrEmpty(value) ? "?" : value; |
|
// } |
|
// } |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ParameterModifiers ParamModifier { |
|
// get { |
|
// return paramModifier; |
|
// } |
|
// set { |
|
// paramModifier = value; |
|
// } |
|
// } |
|
// |
|
// public Expression DefaultValue { |
|
// get { |
|
// return defaultValue; |
|
// } |
|
// set { |
|
// defaultValue = value ?? Expression.Null; |
|
// if (!defaultValue.IsNull) defaultValue.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ParameterDeclarationExpression(TypeReference typeReference, string parameterName) { |
|
// TypeReference = typeReference; |
|
// ParameterName = parameterName; |
|
// attributes = new List<AttributeSection>(); |
|
// defaultValue = Expression.Null; |
|
// } |
|
// |
|
// public ParameterDeclarationExpression(TypeReference typeReference, string parameterName, ParameterModifiers paramModifier) { |
|
// TypeReference = typeReference; |
|
// ParameterName = parameterName; |
|
// ParamModifier = paramModifier; |
|
// attributes = new List<AttributeSection>(); |
|
// defaultValue = Expression.Null; |
|
// } |
|
// |
|
// public ParameterDeclarationExpression(TypeReference typeReference, string parameterName, ParameterModifiers paramModifier, Expression defaultValue) { |
|
// TypeReference = typeReference; |
|
// ParameterName = parameterName; |
|
// ParamModifier = paramModifier; |
|
// DefaultValue = defaultValue; |
|
// attributes = new List<AttributeSection>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitParameterDeclarationExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ParameterDeclarationExpression Attributes={0} ParameterName={1} TypeReference={2" + |
|
// "} ParamModifier={3} DefaultValue={4}]", GetCollectionString(Attributes), ParameterName, TypeReference, ParamModifier, DefaultValue); |
|
// } |
|
// } |
|
// |
|
// public abstract class ParametrizedNode : AttributedNode { |
|
// |
|
// string name; |
|
// |
|
// List<ParameterDeclarationExpression> parameters; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public List<ParameterDeclarationExpression> Parameters { |
|
// get { |
|
// return parameters; |
|
// } |
|
// set { |
|
// parameters = value ?? new List<ParameterDeclarationExpression>(); |
|
// } |
|
// } |
|
// |
|
// protected ParametrizedNode() { |
|
// name = ""; |
|
// parameters = new List<ParameterDeclarationExpression>(); |
|
// } |
|
// |
|
// protected ParametrizedNode(Modifiers modifier, List<AttributeSection> attributes, string name, List<ParameterDeclarationExpression> parameters) { |
|
// Modifier = modifier; |
|
// Attributes = attributes; |
|
// Name = name; |
|
// Parameters = parameters; |
|
// } |
|
// } |
|
// |
|
// public class ParenthesizedExpression : Expression { |
|
// |
|
// Expression expression; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ParenthesizedExpression(Expression expression) { |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitParenthesizedExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ParenthesizedExpression Expression={0}]", Expression); |
|
// } |
|
// } |
|
// |
|
// public class PropertyDeclaration : MemberNode { |
|
// |
|
// Location bodyStart; |
|
// |
|
// Location bodyEnd; |
|
// |
|
// PropertyGetRegion getRegion; |
|
// |
|
// PropertySetRegion setRegion; |
|
// |
|
// Expression initializer; |
|
// |
|
// public Location BodyStart { |
|
// get { |
|
// return bodyStart; |
|
// } |
|
// set { |
|
// bodyStart = value; |
|
// } |
|
// } |
|
// |
|
// public Location BodyEnd { |
|
// get { |
|
// return bodyEnd; |
|
// } |
|
// set { |
|
// bodyEnd = value; |
|
// } |
|
// } |
|
// |
|
// public PropertyGetRegion GetRegion { |
|
// get { |
|
// return getRegion; |
|
// } |
|
// set { |
|
// getRegion = value ?? PropertyGetRegion.Null; |
|
// if (!getRegion.IsNull) getRegion.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public PropertySetRegion SetRegion { |
|
// get { |
|
// return setRegion; |
|
// } |
|
// set { |
|
// setRegion = value ?? PropertySetRegion.Null; |
|
// if (!setRegion.IsNull) setRegion.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression Initializer { |
|
// get { |
|
// return initializer; |
|
// } |
|
// set { |
|
// initializer = value ?? Expression.Null; |
|
// if (!initializer.IsNull) initializer.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public PropertyDeclaration(Modifiers modifier, List<AttributeSection> attributes, string name, List<ParameterDeclarationExpression> parameters) { |
|
// Modifier = modifier; |
|
// Attributes = attributes; |
|
// Name = name; |
|
// Parameters = parameters; |
|
// bodyStart = Location.Empty; |
|
// bodyEnd = Location.Empty; |
|
// getRegion = PropertyGetRegion.Null; |
|
// setRegion = PropertySetRegion.Null; |
|
// initializer = Expression.Null; |
|
// } |
|
// |
|
// public bool IsReadOnly { |
|
// get { |
|
// return HasGetRegion && !HasSetRegion; |
|
// } |
|
// } |
|
// |
|
// public bool HasGetRegion { |
|
// get { |
|
// return !getRegion.IsNull; |
|
// } |
|
// } |
|
// |
|
// public bool IsWriteOnly { |
|
// get { |
|
// return !HasGetRegion && HasSetRegion; |
|
// } |
|
// } |
|
// |
|
// public bool IsIndexer { |
|
// get { |
|
// return (Modifier & Modifiers.Default) != 0; |
|
// } |
|
// } |
|
// |
|
// |
|
// internal PropertyDeclaration(string name, TypeReference typeReference, Modifiers modifier, List<AttributeSection> attributes) : this(modifier, attributes, name, null) |
|
// { |
|
// this.TypeReference = typeReference; |
|
// if ((modifier & Modifiers.ReadOnly) != Modifiers.ReadOnly) { |
|
// this.SetRegion = new PropertySetRegion(null, null); |
|
// } |
|
// if ((modifier & Modifiers.WriteOnly) != Modifiers.WriteOnly) { |
|
// this.GetRegion = new PropertyGetRegion(null, null); |
|
// } |
|
// } |
|
// |
|
// public bool HasSetRegion { |
|
// get { |
|
// return !setRegion.IsNull; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitPropertyDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[PropertyDeclaration BodyStart={0} BodyEnd={1} GetRegion={2} SetRegion={3} Initia" + |
|
// "lizer={4} InterfaceImplementations={5} TypeReference={6} Name={7} Parameters={8}" + |
|
// " Attributes={9} Modifier={10}]", BodyStart, BodyEnd, GetRegion, SetRegion, Initializer, GetCollectionString(InterfaceImplementations), TypeReference, Name, GetCollectionString(Parameters), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class PropertyGetRegion : PropertyGetSetRegion { |
|
// |
|
// public PropertyGetRegion(BlockStatement block, List<AttributeSection> attributes) : |
|
// base(block, attributes) { |
|
// } |
|
// |
|
// public static PropertyGetRegion Null { |
|
// get { |
|
// return NullPropertyGetRegion.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitPropertyGetRegion(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[PropertyGetRegion Block={0} Attributes={1} Modifier={2}]", Block, GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullPropertyGetRegion : PropertyGetRegion { |
|
// |
|
// private NullPropertyGetRegion() : |
|
// base(null, null) { |
|
// } |
|
// |
|
// internal static NullPropertyGetRegion Instance = new NullPropertyGetRegion(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullPropertyGetRegion]"; |
|
// } |
|
// } |
|
// |
|
// public abstract class PropertyGetSetRegion : AttributedNode, INullable { |
|
// |
|
// BlockStatement block; |
|
// |
|
// public BlockStatement Block { |
|
// get { |
|
// return block; |
|
// } |
|
// set { |
|
// block = value ?? BlockStatement.Null; |
|
// if (!block.IsNull) block.Parent = this; |
|
// } |
|
// } |
|
// |
|
// protected PropertyGetSetRegion(BlockStatement block, List<AttributeSection> attributes) { |
|
// Block = block; |
|
// Attributes = attributes; |
|
// } |
|
// |
|
// public virtual bool IsNull { |
|
// get { |
|
// return false; |
|
// } |
|
// } |
|
// } |
|
// |
|
// public class PropertySetRegion : PropertyGetSetRegion { |
|
// |
|
// List<ParameterDeclarationExpression> parameters; |
|
// |
|
// public List<ParameterDeclarationExpression> Parameters { |
|
// get { |
|
// return parameters; |
|
// } |
|
// set { |
|
// parameters = value ?? new List<ParameterDeclarationExpression>(); |
|
// } |
|
// } |
|
// |
|
// public PropertySetRegion(BlockStatement block, List<AttributeSection> attributes) : |
|
// base(block, attributes) { |
|
// parameters = new List<ParameterDeclarationExpression>(); |
|
// } |
|
// |
|
// public static PropertySetRegion Null { |
|
// get { |
|
// return NullPropertySetRegion.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitPropertySetRegion(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[PropertySetRegion Parameters={0} Block={1} Attributes={2} Modifier={3}]", GetCollectionString(Parameters), Block, GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullPropertySetRegion : PropertySetRegion { |
|
// |
|
// private NullPropertySetRegion() : |
|
// base(null, null) { |
|
// } |
|
// |
|
// internal static NullPropertySetRegion Instance = new NullPropertySetRegion(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullPropertySetRegion]"; |
|
// } |
|
// } |
|
// |
|
// public class QueryExpression : Expression { |
|
// |
|
// List<QueryExpressionClause> clauses; |
|
// |
|
// public List<QueryExpressionClause> Clauses { |
|
// get { |
|
// return clauses; |
|
// } |
|
// set { |
|
// clauses = value ?? new List<QueryExpressionClause>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpression() { |
|
// clauses = new List<QueryExpressionClause>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpression Clauses={0}]", GetCollectionString(Clauses)); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionAggregateClause : QueryExpressionClause { |
|
// |
|
// CollectionRangeVariable source; |
|
// |
|
// List<QueryExpressionClause> middleClauses; |
|
// |
|
// List<ExpressionRangeVariable> intoVariables; |
|
// |
|
// public CollectionRangeVariable Source { |
|
// get { |
|
// return source; |
|
// } |
|
// set { |
|
// source = value ?? CollectionRangeVariable.Null; |
|
// if (!source.IsNull) source.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<QueryExpressionClause> MiddleClauses { |
|
// get { |
|
// return middleClauses; |
|
// } |
|
// set { |
|
// middleClauses = value ?? new List<QueryExpressionClause>(); |
|
// } |
|
// } |
|
// |
|
// public List<ExpressionRangeVariable> IntoVariables { |
|
// get { |
|
// return intoVariables; |
|
// } |
|
// set { |
|
// intoVariables = value ?? new List<ExpressionRangeVariable>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionAggregateClause() { |
|
// source = CollectionRangeVariable.Null; |
|
// middleClauses = new List<QueryExpressionClause>(); |
|
// intoVariables = new List<ExpressionRangeVariable>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionAggregateClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionAggregateClause Source={0} MiddleClauses={1} IntoVariables={2}]", Source, GetCollectionString(MiddleClauses), GetCollectionString(IntoVariables)); |
|
// } |
|
// } |
|
// |
|
// public abstract class QueryExpressionClause : AbstractNode, INullable { |
|
// |
|
// protected QueryExpressionClause() { |
|
// } |
|
// |
|
// public virtual bool IsNull { |
|
// get { |
|
// return false; |
|
// } |
|
// } |
|
// |
|
// public static QueryExpressionClause Null { |
|
// get { |
|
// return NullQueryExpressionClause.Instance; |
|
// } |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullQueryExpressionClause : QueryExpressionClause { |
|
// |
|
// internal static NullQueryExpressionClause Instance = new NullQueryExpressionClause(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullQueryExpressionClause]"; |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionDistinctClause : QueryExpressionClause { |
|
// |
|
// public QueryExpressionDistinctClause() { |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionDistinctClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[QueryExpressionDistinctClause]"; |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionFromClause : QueryExpressionClause { |
|
// |
|
// List<CollectionRangeVariable> sources; |
|
// |
|
// public List<CollectionRangeVariable> Sources { |
|
// get { |
|
// return sources; |
|
// } |
|
// set { |
|
// sources = value ?? new List<CollectionRangeVariable>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionFromClause() { |
|
// sources = new List<CollectionRangeVariable>(); |
|
// } |
|
// |
|
// public new static QueryExpressionFromClause Null { |
|
// get { |
|
// return NullQueryExpressionFromClause.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionFromClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionFromClause Sources={0}]", GetCollectionString(Sources)); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullQueryExpressionFromClause : QueryExpressionFromClause { |
|
// |
|
// internal static NullQueryExpressionFromClause Instance = new NullQueryExpressionFromClause(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullQueryExpressionFromClause]"; |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionGroupClause : QueryExpressionClause { |
|
// |
|
// Expression projection; |
|
// |
|
// Expression groupBy; |
|
// |
|
// public Expression Projection { |
|
// get { |
|
// return projection; |
|
// } |
|
// set { |
|
// projection = value ?? Expression.Null; |
|
// if (!projection.IsNull) projection.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression GroupBy { |
|
// get { |
|
// return groupBy; |
|
// } |
|
// set { |
|
// groupBy = value ?? Expression.Null; |
|
// if (!groupBy.IsNull) groupBy.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionGroupClause() { |
|
// projection = Expression.Null; |
|
// groupBy = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionGroupClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionGroupClause Projection={0} GroupBy={1}]", Projection, GroupBy); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionGroupJoinVBClause : QueryExpressionClause { |
|
// |
|
// QueryExpressionJoinVBClause joinClause; |
|
// |
|
// List<ExpressionRangeVariable> intoVariables; |
|
// |
|
// public QueryExpressionJoinVBClause JoinClause { |
|
// get { |
|
// return joinClause; |
|
// } |
|
// set { |
|
// joinClause = value ?? QueryExpressionJoinVBClause.Null; |
|
// if (!joinClause.IsNull) joinClause.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<ExpressionRangeVariable> IntoVariables { |
|
// get { |
|
// return intoVariables; |
|
// } |
|
// set { |
|
// intoVariables = value ?? new List<ExpressionRangeVariable>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionGroupJoinVBClause() { |
|
// joinClause = QueryExpressionJoinVBClause.Null; |
|
// intoVariables = new List<ExpressionRangeVariable>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionGroupJoinVBClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionGroupJoinVBClause JoinClause={0} IntoVariables={1}]", JoinClause, GetCollectionString(IntoVariables)); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionGroupVBClause : QueryExpressionClause { |
|
// |
|
// List<ExpressionRangeVariable> groupVariables; |
|
// |
|
// List<ExpressionRangeVariable> byVariables; |
|
// |
|
// List<ExpressionRangeVariable> intoVariables; |
|
// |
|
// public List<ExpressionRangeVariable> GroupVariables { |
|
// get { |
|
// return groupVariables; |
|
// } |
|
// set { |
|
// groupVariables = value ?? new List<ExpressionRangeVariable>(); |
|
// } |
|
// } |
|
// |
|
// public List<ExpressionRangeVariable> ByVariables { |
|
// get { |
|
// return byVariables; |
|
// } |
|
// set { |
|
// byVariables = value ?? new List<ExpressionRangeVariable>(); |
|
// } |
|
// } |
|
// |
|
// public List<ExpressionRangeVariable> IntoVariables { |
|
// get { |
|
// return intoVariables; |
|
// } |
|
// set { |
|
// intoVariables = value ?? new List<ExpressionRangeVariable>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionGroupVBClause() { |
|
// groupVariables = new List<ExpressionRangeVariable>(); |
|
// byVariables = new List<ExpressionRangeVariable>(); |
|
// intoVariables = new List<ExpressionRangeVariable>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionGroupVBClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionGroupVBClause GroupVariables={0} ByVariables={1} IntoVariables={2" + |
|
// "}]", GetCollectionString(GroupVariables), GetCollectionString(ByVariables), GetCollectionString(IntoVariables)); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionJoinClause : QueryExpressionClause { |
|
// |
|
// Expression onExpression; |
|
// |
|
// Expression equalsExpression; |
|
// |
|
// CollectionRangeVariable source; |
|
// |
|
// string intoIdentifier; |
|
// |
|
// public Expression OnExpression { |
|
// get { |
|
// return onExpression; |
|
// } |
|
// set { |
|
// onExpression = value ?? Expression.Null; |
|
// if (!onExpression.IsNull) onExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression EqualsExpression { |
|
// get { |
|
// return equalsExpression; |
|
// } |
|
// set { |
|
// equalsExpression = value ?? Expression.Null; |
|
// if (!equalsExpression.IsNull) equalsExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public CollectionRangeVariable Source { |
|
// get { |
|
// return source; |
|
// } |
|
// set { |
|
// source = value ?? CollectionRangeVariable.Null; |
|
// if (!source.IsNull) source.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public string IntoIdentifier { |
|
// get { |
|
// return intoIdentifier; |
|
// } |
|
// set { |
|
// intoIdentifier = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionJoinClause() { |
|
// onExpression = Expression.Null; |
|
// equalsExpression = Expression.Null; |
|
// source = CollectionRangeVariable.Null; |
|
// intoIdentifier = ""; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionJoinClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionJoinClause OnExpression={0} EqualsExpression={1} Source={2} IntoI" + |
|
// "dentifier={3}]", OnExpression, EqualsExpression, Source, IntoIdentifier); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionJoinConditionVB : AbstractNode { |
|
// |
|
// Expression leftSide; |
|
// |
|
// Expression rightSide; |
|
// |
|
// public Expression LeftSide { |
|
// get { |
|
// return leftSide; |
|
// } |
|
// set { |
|
// leftSide = value ?? Expression.Null; |
|
// if (!leftSide.IsNull) leftSide.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression RightSide { |
|
// get { |
|
// return rightSide; |
|
// } |
|
// set { |
|
// rightSide = value ?? Expression.Null; |
|
// if (!rightSide.IsNull) rightSide.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionJoinConditionVB() { |
|
// leftSide = Expression.Null; |
|
// rightSide = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionJoinConditionVB(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionJoinConditionVB LeftSide={0} RightSide={1}]", LeftSide, RightSide); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionJoinVBClause : QueryExpressionClause { |
|
// |
|
// CollectionRangeVariable joinVariable; |
|
// |
|
// QueryExpressionJoinVBClause subJoin; |
|
// |
|
// List<QueryExpressionJoinConditionVB> conditions; |
|
// |
|
// public CollectionRangeVariable JoinVariable { |
|
// get { |
|
// return joinVariable; |
|
// } |
|
// set { |
|
// joinVariable = value ?? CollectionRangeVariable.Null; |
|
// if (!joinVariable.IsNull) joinVariable.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionJoinVBClause SubJoin { |
|
// get { |
|
// return subJoin; |
|
// } |
|
// set { |
|
// subJoin = value ?? QueryExpressionJoinVBClause.Null; |
|
// if (!subJoin.IsNull) subJoin.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<QueryExpressionJoinConditionVB> Conditions { |
|
// get { |
|
// return conditions; |
|
// } |
|
// set { |
|
// conditions = value ?? new List<QueryExpressionJoinConditionVB>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionJoinVBClause() { |
|
// joinVariable = CollectionRangeVariable.Null; |
|
// subJoin = QueryExpressionJoinVBClause.Null; |
|
// conditions = new List<QueryExpressionJoinConditionVB>(); |
|
// } |
|
// |
|
// public new static QueryExpressionJoinVBClause Null { |
|
// get { |
|
// return NullQueryExpressionJoinVBClause.Instance; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionJoinVBClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionJoinVBClause JoinVariable={0} SubJoin={1} Conditions={2}]", JoinVariable, SubJoin, GetCollectionString(Conditions)); |
|
// } |
|
// } |
|
// |
|
// internal sealed class NullQueryExpressionJoinVBClause : QueryExpressionJoinVBClause { |
|
// |
|
// internal static NullQueryExpressionJoinVBClause Instance = new NullQueryExpressionJoinVBClause(); |
|
// |
|
// public override bool IsNull { |
|
// get { |
|
// return true; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return null; |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[NullQueryExpressionJoinVBClause]"; |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionLetClause : QueryExpressionClause { |
|
// |
|
// List<ExpressionRangeVariable> variables; |
|
// |
|
// public List<ExpressionRangeVariable> Variables { |
|
// get { |
|
// return variables; |
|
// } |
|
// set { |
|
// variables = value ?? new List<ExpressionRangeVariable>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionLetClause() { |
|
// variables = new List<ExpressionRangeVariable>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionLetVBClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionLetVBClause Variables={0}]", GetCollectionString(Variables)); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionOrderClause : QueryExpressionClause { |
|
// |
|
// List<QueryExpressionOrdering> orderings; |
|
// |
|
// public List<QueryExpressionOrdering> Orderings { |
|
// get { |
|
// return orderings; |
|
// } |
|
// set { |
|
// orderings = value ?? new List<QueryExpressionOrdering>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionOrderClause() { |
|
// orderings = new List<QueryExpressionOrdering>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionOrderClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionOrderClause Orderings={0}]", GetCollectionString(Orderings)); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionOrdering : AbstractNode { |
|
// |
|
// Expression criteria; |
|
// |
|
// QueryExpressionOrderingDirection direction; |
|
// |
|
// public Expression Criteria { |
|
// get { |
|
// return criteria; |
|
// } |
|
// set { |
|
// criteria = value ?? Expression.Null; |
|
// if (!criteria.IsNull) criteria.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionOrderingDirection Direction { |
|
// get { |
|
// return direction; |
|
// } |
|
// set { |
|
// direction = value; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionOrdering() { |
|
// criteria = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionOrdering(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionOrdering Criteria={0} Direction={1}]", Criteria, Direction); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionPartitionVBClause : QueryExpressionClause { |
|
// |
|
// Expression expression; |
|
// |
|
// QueryExpressionPartitionType partitionType; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionPartitionType PartitionType { |
|
// get { |
|
// return partitionType; |
|
// } |
|
// set { |
|
// partitionType = value; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionPartitionVBClause() { |
|
// expression = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionPartitionVBClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionPartitionVBClause Expression={0} PartitionType={1}]", Expression, PartitionType); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionSelectClause : QueryExpressionClause { |
|
// |
|
// Expression projection; |
|
// |
|
// public Expression Projection { |
|
// get { |
|
// return projection; |
|
// } |
|
// set { |
|
// projection = value ?? Expression.Null; |
|
// if (!projection.IsNull) projection.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionSelectClause() { |
|
// projection = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionSelectClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionSelectClause Projection={0}]", Projection); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionSelectVBClause : QueryExpressionClause { |
|
// |
|
// List<ExpressionRangeVariable> variables; |
|
// |
|
// public List<ExpressionRangeVariable> Variables { |
|
// get { |
|
// return variables; |
|
// } |
|
// set { |
|
// variables = value ?? new List<ExpressionRangeVariable>(); |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionSelectVBClause() { |
|
// variables = new List<ExpressionRangeVariable>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionSelectVBClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionSelectVBClause Variables={0}]", GetCollectionString(Variables)); |
|
// } |
|
// } |
|
// |
|
// public class QueryExpressionWhereClause : QueryExpressionClause { |
|
// |
|
// Expression condition; |
|
// |
|
// public Expression Condition { |
|
// get { |
|
// return condition; |
|
// } |
|
// set { |
|
// condition = value ?? Expression.Null; |
|
// if (!condition.IsNull) condition.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public QueryExpressionWhereClause() { |
|
// condition = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitQueryExpressionWhereClause(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[QueryExpressionWhereClause Condition={0}]", Condition); |
|
// } |
|
// } |
|
// |
|
// public class RaiseEventStatement : Statement { |
|
// |
|
// string eventName; |
|
// |
|
// List<Expression> arguments; |
|
// |
|
// public string EventName { |
|
// get { |
|
// return eventName; |
|
// } |
|
// set { |
|
// eventName = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public List<Expression> Arguments { |
|
// get { |
|
// return arguments; |
|
// } |
|
// set { |
|
// arguments = value ?? new List<Expression>(); |
|
// } |
|
// } |
|
// |
|
// public RaiseEventStatement(string eventName, List<Expression> arguments) { |
|
// EventName = eventName; |
|
// Arguments = arguments; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitRaiseEventStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[RaiseEventStatement EventName={0} Arguments={1}]", EventName, GetCollectionString(Arguments)); |
|
// } |
|
// } |
|
// |
|
// public class ReDimStatement : Statement { |
|
// |
|
// List<InvocationExpression> reDimClauses; |
|
// |
|
// bool isPreserve; |
|
// |
|
// public List<InvocationExpression> ReDimClauses { |
|
// get { |
|
// return reDimClauses; |
|
// } |
|
// set { |
|
// reDimClauses = value ?? new List<InvocationExpression>(); |
|
// } |
|
// } |
|
// |
|
// public bool IsPreserve { |
|
// get { |
|
// return isPreserve; |
|
// } |
|
// set { |
|
// isPreserve = value; |
|
// } |
|
// } |
|
// |
|
// public ReDimStatement(bool isPreserve) { |
|
// IsPreserve = isPreserve; |
|
// reDimClauses = new List<InvocationExpression>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitReDimStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ReDimStatement ReDimClauses={0} IsPreserve={1}]", GetCollectionString(ReDimClauses), IsPreserve); |
|
// } |
|
// } |
|
// |
|
// public class RemoveHandlerStatement : Statement { |
|
// |
|
// Expression eventExpression; |
|
// |
|
// Expression handlerExpression; |
|
// |
|
// public Expression EventExpression { |
|
// get { |
|
// return eventExpression; |
|
// } |
|
// set { |
|
// eventExpression = value ?? Expression.Null; |
|
// if (!eventExpression.IsNull) eventExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression HandlerExpression { |
|
// get { |
|
// return handlerExpression; |
|
// } |
|
// set { |
|
// handlerExpression = value ?? Expression.Null; |
|
// if (!handlerExpression.IsNull) handlerExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public RemoveHandlerStatement(Expression eventExpression, Expression handlerExpression) { |
|
// EventExpression = eventExpression; |
|
// HandlerExpression = handlerExpression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitRemoveHandlerStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[RemoveHandlerStatement EventExpression={0} HandlerExpression={1}]", EventExpression, HandlerExpression); |
|
// } |
|
// } |
|
// |
|
// public class ResumeStatement : Statement { |
|
// |
|
// string labelName; |
|
// |
|
// bool isResumeNext; |
|
// |
|
// public string LabelName { |
|
// get { |
|
// return labelName; |
|
// } |
|
// set { |
|
// labelName = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public bool IsResumeNext { |
|
// get { |
|
// return isResumeNext; |
|
// } |
|
// set { |
|
// isResumeNext = value; |
|
// } |
|
// } |
|
// |
|
// public ResumeStatement(bool isResumeNext) { |
|
// IsResumeNext = isResumeNext; |
|
// labelName = ""; |
|
// } |
|
// |
|
// public ResumeStatement(string labelName) { |
|
// LabelName = labelName; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitResumeStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ResumeStatement LabelName={0} IsResumeNext={1}]", LabelName, IsResumeNext); |
|
// } |
|
// } |
|
// |
|
// public class ReturnStatement : Statement { |
|
// |
|
// Expression expression; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ReturnStatement(Expression expression) { |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitReturnStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ReturnStatement Expression={0}]", Expression); |
|
// } |
|
// } |
|
// |
|
// public class StopStatement : Statement { |
|
// |
|
// public StopStatement() { |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitStopStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[StopStatement]"; |
|
// } |
|
// } |
|
// |
|
// public class SwitchSection : BlockStatement { |
|
// |
|
// List<CaseLabel> switchLabels; |
|
// |
|
// public List<CaseLabel> SwitchLabels { |
|
// get { |
|
// return switchLabels; |
|
// } |
|
// set { |
|
// switchLabels = value ?? new List<CaseLabel>(); |
|
// } |
|
// } |
|
// |
|
// public SwitchSection() { |
|
// switchLabels = new List<CaseLabel>(); |
|
// } |
|
// |
|
// public SwitchSection(List<CaseLabel> switchLabels) { |
|
// SwitchLabels = switchLabels; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitSwitchSection(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[SwitchSection SwitchLabels={0}]", GetCollectionString(SwitchLabels)); |
|
// } |
|
// } |
|
// |
|
// public class SwitchStatement : Statement { |
|
// |
|
// Expression switchExpression; |
|
// |
|
// List<SwitchSection> switchSections; |
|
// |
|
// public Expression SwitchExpression { |
|
// get { |
|
// return switchExpression; |
|
// } |
|
// set { |
|
// switchExpression = value ?? Expression.Null; |
|
// if (!switchExpression.IsNull) switchExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<SwitchSection> SwitchSections { |
|
// get { |
|
// return switchSections; |
|
// } |
|
// set { |
|
// switchSections = value ?? new List<SwitchSection>(); |
|
// } |
|
// } |
|
// |
|
// public SwitchStatement(Expression switchExpression, List<SwitchSection> switchSections) { |
|
// SwitchExpression = switchExpression; |
|
// SwitchSections = switchSections; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitSwitchStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[SwitchStatement SwitchExpression={0} SwitchSections={1}]", SwitchExpression, GetCollectionString(SwitchSections)); |
|
// } |
|
// } |
|
// |
|
// public class TemplateDefinition : AttributedNode { |
|
// |
|
// string name; |
|
// |
|
// VarianceModifier varianceModifier; |
|
// |
|
// List<TypeReference> bases; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = string.IsNullOrEmpty(value) ? "?" : value; |
|
// } |
|
// } |
|
// |
|
// public VarianceModifier VarianceModifier { |
|
// get { |
|
// return varianceModifier; |
|
// } |
|
// set { |
|
// varianceModifier = value; |
|
// } |
|
// } |
|
// |
|
// public List<TypeReference> Bases { |
|
// get { |
|
// return bases; |
|
// } |
|
// set { |
|
// bases = value ?? new List<TypeReference>(); |
|
// } |
|
// } |
|
// |
|
// public TemplateDefinition() { |
|
// name = "?"; |
|
// bases = new List<TypeReference>(); |
|
// } |
|
// |
|
// public TemplateDefinition(string name, List<AttributeSection> attributes) { |
|
// Name = name; |
|
// Attributes = attributes; |
|
// bases = new List<TypeReference>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitTemplateDefinition(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[TemplateDefinition Name={0} VarianceModifier={1} Bases={2} Attributes={3} Modifi" + |
|
// "er={4}]", Name, VarianceModifier, GetCollectionString(Bases), GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class ThisReferenceExpression : Expression { |
|
// |
|
// public ThisReferenceExpression() { |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitThisReferenceExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return "[ThisReferenceExpression]"; |
|
// } |
|
// } |
|
// |
|
// public class ThrowStatement : Statement { |
|
// |
|
// Expression expression; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public ThrowStatement(Expression expression) { |
|
// Expression = expression; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitThrowStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[ThrowStatement Expression={0}]", Expression); |
|
// } |
|
// } |
|
// |
|
// public class TryCatchStatement : Statement { |
|
// |
|
// Statement statementBlock; |
|
// |
|
// List<CatchClause> catchClauses; |
|
// |
|
// Statement finallyBlock; |
|
// |
|
// public Statement StatementBlock { |
|
// get { |
|
// return statementBlock; |
|
// } |
|
// set { |
|
// statementBlock = value ?? Statement.Null; |
|
// if (!statementBlock.IsNull) statementBlock.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public List<CatchClause> CatchClauses { |
|
// get { |
|
// return catchClauses; |
|
// } |
|
// set { |
|
// catchClauses = value ?? new List<CatchClause>(); |
|
// } |
|
// } |
|
// |
|
// public Statement FinallyBlock { |
|
// get { |
|
// return finallyBlock; |
|
// } |
|
// set { |
|
// finallyBlock = value ?? Statement.Null; |
|
// if (!finallyBlock.IsNull) finallyBlock.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TryCatchStatement(Statement statementBlock, List<CatchClause> catchClauses, Statement finallyBlock) { |
|
// StatementBlock = statementBlock; |
|
// CatchClauses = catchClauses; |
|
// FinallyBlock = finallyBlock; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitTryCatchStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[TryCatchStatement StatementBlock={0} CatchClauses={1} FinallyBlock={2}]", StatementBlock, GetCollectionString(CatchClauses), FinallyBlock); |
|
// } |
|
// } |
|
// |
|
// public class TypeDeclaration : AttributedNode { |
|
// |
|
// string name; |
|
// |
|
// ClassType type; |
|
// |
|
// List<TypeReference> baseTypes; |
|
// |
|
// List<TemplateDefinition> templates; |
|
// |
|
// Location bodyStartLocation; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public ClassType Type { |
|
// get { |
|
// return type; |
|
// } |
|
// set { |
|
// type = value; |
|
// } |
|
// } |
|
// |
|
// public List<TypeReference> BaseTypes { |
|
// get { |
|
// return baseTypes; |
|
// } |
|
// set { |
|
// baseTypes = value ?? new List<TypeReference>(); |
|
// } |
|
// } |
|
// |
|
// public List<TemplateDefinition> Templates { |
|
// get { |
|
// return templates; |
|
// } |
|
// set { |
|
// templates = value ?? new List<TemplateDefinition>(); |
|
// } |
|
// } |
|
// |
|
// public Location BodyStartLocation { |
|
// get { |
|
// return bodyStartLocation; |
|
// } |
|
// set { |
|
// bodyStartLocation = value; |
|
// } |
|
// } |
|
// |
|
// public TypeDeclaration(Modifiers modifier, List<AttributeSection> attributes) { |
|
// Modifier = modifier; |
|
// Attributes = attributes; |
|
// name = ""; |
|
// baseTypes = new List<TypeReference>(); |
|
// templates = new List<TemplateDefinition>(); |
|
// bodyStartLocation = Location.Empty; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitTypeDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[TypeDeclaration Name={0} Type={1} BaseTypes={2} Templates={3} BodyStartLocation=" + |
|
// "{4} Attributes={5} Modifier={6}]", Name, Type, GetCollectionString(BaseTypes), GetCollectionString(Templates), BodyStartLocation, GetCollectionString(Attributes), Modifier); |
|
// } |
|
// } |
|
// |
|
// public class TypeOfExpression : Expression { |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TypeOfExpression(TypeReference typeReference) { |
|
// TypeReference = typeReference; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitTypeOfExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[TypeOfExpression TypeReference={0}]", TypeReference); |
|
// } |
|
// } |
|
// |
|
// public class TypeOfIsExpression : Expression { |
|
// |
|
// Expression expression; |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TypeOfIsExpression(Expression expression, TypeReference typeReference) { |
|
// Expression = expression; |
|
// TypeReference = typeReference; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitTypeOfIsExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[TypeOfIsExpression Expression={0} TypeReference={1}]", Expression, TypeReference); |
|
// } |
|
// } |
|
// |
|
// public class TypeReferenceExpression : Expression { |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TypeReferenceExpression(TypeReference typeReference) { |
|
// TypeReference = typeReference; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitTypeReferenceExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[TypeReferenceExpression TypeReference={0}]", TypeReference); |
|
// } |
|
// } |
|
// |
|
// public class UnaryOperatorExpression : Expression { |
|
// |
|
// UnaryOperatorType op; |
|
// |
|
// Expression expression; |
|
// |
|
// public UnaryOperatorType Op { |
|
// get { |
|
// return op; |
|
// } |
|
// set { |
|
// op = value; |
|
// } |
|
// } |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public UnaryOperatorExpression(UnaryOperatorType op) { |
|
// Op = op; |
|
// expression = Expression.Null; |
|
// } |
|
// |
|
// public UnaryOperatorExpression(Expression expression, UnaryOperatorType op) { |
|
// Expression = expression; |
|
// Op = op; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitUnaryOperatorExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[UnaryOperatorExpression Op={0} Expression={1}]", Op, Expression); |
|
// } |
|
// } |
|
// |
|
// public class UsingStatement : StatementWithEmbeddedStatement { |
|
// |
|
// Statement resourceAcquisition; |
|
// |
|
// public Statement ResourceAcquisition { |
|
// get { |
|
// return resourceAcquisition; |
|
// } |
|
// set { |
|
// resourceAcquisition = value ?? Statement.Null; |
|
// if (!resourceAcquisition.IsNull) resourceAcquisition.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public UsingStatement(Statement resourceAcquisition, Statement embeddedStatement) { |
|
// ResourceAcquisition = resourceAcquisition; |
|
// EmbeddedStatement = embeddedStatement; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitUsingStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[UsingStatement ResourceAcquisition={0} EmbeddedStatement={1}]", ResourceAcquisition, EmbeddedStatement); |
|
// } |
|
// } |
|
// |
|
// public class VariableDeclaration : AbstractNode { |
|
// |
|
// string name; |
|
// |
|
// Expression initializer; |
|
// |
|
// TypeReference typeReference; |
|
// |
|
// Expression fixedArrayInitialization; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public Expression Initializer { |
|
// get { |
|
// return initializer; |
|
// } |
|
// set { |
|
// initializer = value ?? Expression.Null; |
|
// if (!initializer.IsNull) initializer.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public TypeReference TypeReference { |
|
// get { |
|
// return typeReference; |
|
// } |
|
// set { |
|
// typeReference = value ?? TypeReference.Null; |
|
// if (!typeReference.IsNull) typeReference.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression FixedArrayInitialization { |
|
// get { |
|
// return fixedArrayInitialization; |
|
// } |
|
// set { |
|
// fixedArrayInitialization = value ?? Expression.Null; |
|
// if (!fixedArrayInitialization.IsNull) fixedArrayInitialization.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public VariableDeclaration(string name) { |
|
// Name = name; |
|
// initializer = Expression.Null; |
|
// typeReference = TypeReference.Null; |
|
// fixedArrayInitialization = Expression.Null; |
|
// } |
|
// |
|
// public VariableDeclaration(string name, Expression initializer) { |
|
// Name = name; |
|
// Initializer = initializer; |
|
// typeReference = TypeReference.Null; |
|
// fixedArrayInitialization = Expression.Null; |
|
// } |
|
// |
|
// public VariableDeclaration(string name, Expression initializer, TypeReference typeReference) { |
|
// Name = name; |
|
// Initializer = initializer; |
|
// TypeReference = typeReference; |
|
// fixedArrayInitialization = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitVariableDeclaration(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[VariableDeclaration Name={0} Initializer={1} TypeReference={2} FixedArrayInitial" + |
|
// "ization={3}]", Name, Initializer, TypeReference, FixedArrayInitialization); |
|
// } |
|
// } |
|
// |
|
// public class WithStatement : Statement { |
|
// |
|
// Expression expression; |
|
// |
|
// BlockStatement body; |
|
// |
|
// public Expression Expression { |
|
// get { |
|
// return expression; |
|
// } |
|
// set { |
|
// expression = value ?? Expression.Null; |
|
// if (!expression.IsNull) expression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public BlockStatement Body { |
|
// get { |
|
// return body; |
|
// } |
|
// set { |
|
// body = value ?? BlockStatement.Null; |
|
// if (!body.IsNull) body.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public WithStatement(Expression expression) { |
|
// Expression = expression; |
|
// body = BlockStatement.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitWithStatement(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[WithStatement Expression={0} Body={1}]", Expression, Body); |
|
// } |
|
// } |
|
// |
|
// public class XmlAttributeExpression : XmlExpression { |
|
// |
|
// string name; |
|
// |
|
// string literalValue; |
|
// |
|
// bool useDoubleQuotes; |
|
// |
|
// Expression expressionValue; |
|
// |
|
// public string Name { |
|
// get { |
|
// return name; |
|
// } |
|
// set { |
|
// name = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public string LiteralValue { |
|
// get { |
|
// return literalValue; |
|
// } |
|
// set { |
|
// literalValue = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public bool UseDoubleQuotes { |
|
// get { |
|
// return useDoubleQuotes; |
|
// } |
|
// set { |
|
// useDoubleQuotes = value; |
|
// } |
|
// } |
|
// |
|
// public Expression ExpressionValue { |
|
// get { |
|
// return expressionValue; |
|
// } |
|
// set { |
|
// expressionValue = value ?? Expression.Null; |
|
// if (!expressionValue.IsNull) expressionValue.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public XmlAttributeExpression() { |
|
// name = ""; |
|
// literalValue = ""; |
|
// expressionValue = Expression.Null; |
|
// } |
|
// |
|
// public bool IsLiteralValue { |
|
// get { |
|
// return expressionValue.IsNull; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitXmlAttributeExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[XmlAttributeExpression Name={0} LiteralValue={1} UseDoubleQuotes={2} ExpressionV" + |
|
// "alue={3}]", Name, LiteralValue, UseDoubleQuotes, ExpressionValue); |
|
// } |
|
// } |
|
// |
|
// public class XmlContentExpression : XmlExpression { |
|
// |
|
// string content; |
|
// |
|
// XmlContentType type; |
|
// |
|
// public string Content { |
|
// get { |
|
// return content; |
|
// } |
|
// set { |
|
// content = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public XmlContentType Type { |
|
// get { |
|
// return type; |
|
// } |
|
// set { |
|
// type = value; |
|
// } |
|
// } |
|
// |
|
// public XmlContentExpression(string content, XmlContentType type) { |
|
// Content = content; |
|
// Type = type; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitXmlContentExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[XmlContentExpression Content={0} Type={1}]", Content, Type); |
|
// } |
|
// } |
|
// |
|
// public class XmlDocumentExpression : XmlExpression { |
|
// |
|
// List<XmlExpression> expressions; |
|
// |
|
// public List<XmlExpression> Expressions { |
|
// get { |
|
// return expressions; |
|
// } |
|
// set { |
|
// expressions = value ?? new List<XmlExpression>(); |
|
// } |
|
// } |
|
// |
|
// public XmlDocumentExpression() { |
|
// expressions = new List<XmlExpression>(); |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitXmlDocumentExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[XmlDocumentExpression Expressions={0}]", GetCollectionString(Expressions)); |
|
// } |
|
// } |
|
// |
|
// public class XmlElementExpression : XmlExpression { |
|
// |
|
// Expression content; |
|
// |
|
// Expression nameExpression; |
|
// |
|
// string xmlName; |
|
// |
|
// List<XmlExpression> attributes; |
|
// |
|
// public Expression Content { |
|
// get { |
|
// return content; |
|
// } |
|
// set { |
|
// content = value ?? Expression.Null; |
|
// if (!content.IsNull) content.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public Expression NameExpression { |
|
// get { |
|
// return nameExpression; |
|
// } |
|
// set { |
|
// nameExpression = value ?? Expression.Null; |
|
// if (!nameExpression.IsNull) nameExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public string XmlName { |
|
// get { |
|
// return xmlName; |
|
// } |
|
// set { |
|
// xmlName = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public List<XmlExpression> Attributes { |
|
// get { |
|
// return attributes; |
|
// } |
|
// set { |
|
// attributes = value ?? new List<XmlExpression>(); |
|
// } |
|
// } |
|
// |
|
// public XmlElementExpression() { |
|
// content = Expression.Null; |
|
// nameExpression = Expression.Null; |
|
// xmlName = ""; |
|
// attributes = new List<XmlExpression>(); |
|
// } |
|
// |
|
// public bool IsExpression { |
|
// get { |
|
// return !content.IsNull; |
|
// } |
|
// } |
|
// |
|
// public bool NameIsExpression { |
|
// get { |
|
// return !nameExpression.IsNull; |
|
// } |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitXmlElementExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[XmlElementExpression Content={0} NameExpression={1} XmlName={2} Attributes={3}]", Content, NameExpression, XmlName, GetCollectionString(Attributes)); |
|
// } |
|
// } |
|
// |
|
// public class XmlEmbeddedExpression : XmlExpression { |
|
// |
|
// Expression inlineVBExpression; |
|
// |
|
// public Expression InlineVBExpression { |
|
// get { |
|
// return inlineVBExpression; |
|
// } |
|
// set { |
|
// inlineVBExpression = value ?? Expression.Null; |
|
// if (!inlineVBExpression.IsNull) inlineVBExpression.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public XmlEmbeddedExpression() { |
|
// inlineVBExpression = Expression.Null; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitXmlEmbeddedExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[XmlEmbeddedExpression InlineVBExpression={0}]", InlineVBExpression); |
|
// } |
|
// } |
|
// |
|
// public abstract class XmlExpression : Expression { |
|
// |
|
// protected XmlExpression() { |
|
// } |
|
// } |
|
// |
|
// public class XmlMemberAccessExpression : Expression { |
|
// |
|
// Expression targetObject; |
|
// |
|
// XmlAxisType axisType; |
|
// |
|
// bool isXmlIdentifier; |
|
// |
|
// string identifier; |
|
// |
|
// public Expression TargetObject { |
|
// get { |
|
// return targetObject; |
|
// } |
|
// set { |
|
// targetObject = value ?? Expression.Null; |
|
// if (!targetObject.IsNull) targetObject.Parent = this; |
|
// } |
|
// } |
|
// |
|
// public XmlAxisType AxisType { |
|
// get { |
|
// return axisType; |
|
// } |
|
// set { |
|
// axisType = value; |
|
// } |
|
// } |
|
// |
|
// public bool IsXmlIdentifier { |
|
// get { |
|
// return isXmlIdentifier; |
|
// } |
|
// set { |
|
// isXmlIdentifier = value; |
|
// } |
|
// } |
|
// |
|
// public string Identifier { |
|
// get { |
|
// return identifier; |
|
// } |
|
// set { |
|
// identifier = value ?? ""; |
|
// } |
|
// } |
|
// |
|
// public XmlMemberAccessExpression(Expression targetObject, XmlAxisType axisType, string identifier, bool isXmlIdentifier) { |
|
// TargetObject = targetObject; |
|
// AxisType = axisType; |
|
// Identifier = identifier; |
|
// IsXmlIdentifier = isXmlIdentifier; |
|
// } |
|
// |
|
// public override object AcceptVisitor(IAstVisitor visitor, object data) { |
|
// return visitor.VisitXmlMemberAccessExpression(this, data); |
|
// } |
|
// |
|
// public override string ToString() { |
|
// return string.Format("[XmlMemberAccessExpression TargetObject={0} AxisType={1} IsXmlIdentifier={2} Iden" + |
|
// "tifier={3}]", TargetObject, AxisType, IsXmlIdentifier, Identifier); |
|
// } |
|
// } |
|
//}
|
|
|