예제 #1
0
        public override string VisitConditions([NotNull] WordLangParser.ConditionsContext context)
        {
            var conds = context.booleanExpr()
                        .Select(ctx => Visit(ctx));
            var subs = context.substitute()
                       .Select(ctx => Visit(ctx));
            var all = new List <string>();

            all.AddRange(conds);
            all.AddRange(subs);
            var allSet = all.ToList();
            var total  = allSet.CombineWithCommas();

            return($"[{total}]");
        }
예제 #2
0
        public override List <GeneralError> VisitConditions([NotNull] WordLangParser.ConditionsContext context)
        {
            var errs            = new List <GeneralError>();
            var booleanExprCtxs = context.booleanExpr();

            if (booleanExprCtxs == null || booleanExprCtxs.Count() == 0)
            {
                // errs.Add(context.NewError("You must have at least one Condition."));
            }
            else
            {
                booleanExprCtxs.Select(ctx => Visit(ctx))
                .ToList()
                .ForEach(set => errs.AddRange(set));
            }

            return(errs);
        }
예제 #3
0
 public override string VisitConditions([NotNull] WordLangParser.ConditionsContext context)
 {
     return(context.booleanExpr()
            .Select(ctx => Visit(ctx))
            .Aggregate("", (a, c) => a + c));
 }