public static string ToSymbolString(this AccessOperator @operator) { return(@operator switch { AccessOperator.Standard => ".", AccessOperator.Conditional => "?.", _ => throw ExhaustiveMatch.Failed(@operator) });
public QualifiedNameExpressionSyntax( TextSpan span, IExpressionSyntax context, AccessOperator accessOperator, INameExpressionSyntax field) : base(span) { this.context = context; AccessOperator = accessOperator; Field = field; }
public FieldAccessExpression( TextSpan span, DataType dataType, ExpressionSemantics semantics, IExpression context, AccessOperator accessOperator, FieldSymbol referencedSymbol) : base(span, dataType, semantics) { Context = context; AccessOperator = accessOperator; ReferencedSymbol = referencedSymbol; }
public override string ToString() { return($"{Context.ToGroupedString(ExpressionPrecedence)}{AccessOperator.ToSymbolString()}{ReferencedSymbol.Name}"); }