public static void VisitParenthesisExpressionChildren<TExpression>( IParenthesisExpression<TExpression> parenthesisExpression, IGenericExpressionVisitor visitor) where TExpression : IExpression { VisitIfNotNull(parenthesisExpression.Expression, visitor); }
public override void VisitParenthesisExpression <TExpression>( IParenthesisExpression <TExpression> parenthesisExpression) { Value = new Expression() { ParenthesisExpression = new ParenthesisExpressionFactory(parenthesisExpression).Value }; }
/// <summary> /// Append expression /// </summary> /// <param name="exp"></param> /// <param name="postSeparator"></param> /// <returns></returns> public override PluralRuleExpressionPrinter Append(IExpression exp, string postSeparator = null) { if (exp == null) { return(this); } var x = exp switch { IPluralRuleExpression pre => Append(pre.Infos, " ").Append(pre.Rule, " ").Append(pre.Samples, " "), IPluralRuleInfosExpression infos => Append('[').Append(infos.Infos, ",").Append(']'), IPluralRuleInfoExpression info => Append(info.Name).Append('=').Append(info.Value), ISamplesExpression samples => (Append("@" + samples.Name + " ") as PluralRuleExpressionStringPrinter).AppendSamples(samples.Samples, ", "), IRangeExpression range => Append(range.MinValue).Append("..").Append(range.MaxValue), IGroupExpression group => Append(group.Values, ","), IInfiniteExpression inf => Append('…'), IConstantExpression c => Append(c.Value?.ToString()), IArgumentNameExpression arg => Append(arg.Name), IParenthesisExpression par => Append('(').Append(par.Element).Append(')'), IUnaryOpExpression uop => Append(uop.Op switch { UnaryOp.Plus => "+", UnaryOp.Not => "not ", UnaryOp.OnesComplement => "~", UnaryOp.Negate => "-", _ => "¤" }).Append(uop.Element),
public override void VisitParenthesisExpression <TExpression>(IParenthesisExpression <TExpression> parenthesisExpression) { Steps.Add(new WriteStartParenthesis()); Steps.Add(new WriteExpression <TExpression>(parenthesisExpression.Expression)); Steps.Add(new WriteEndParenthesis()); }
public virtual void VisitParenthesisExpression <TExpression>(IParenthesisExpression <TExpression> parenthesisExpression) where TExpression : IExpression { Visit(parenthesisExpression); }