public override void ExitParameters([NotNull] ParametersContext context) { logger.Trace(" Exit Params={0}", context._pairs.Aggregate("", (a, r) => a += r.ID().GetText() + " = " + r.pairvalue().GetText() + "\n")); var parameter = new Models.ParameterModel("#" + context.ID().GetText()); //parameter.Section = CurrentSection; foreach (var item in context._pairs) { var p = PairProps.Get(item); parameter.Value.Add(p); } // check for doubles var existing = Collector.ParameterModels.FirstOrDefault(p => p.Name == parameter.Name); if (existing != null) { existing.Value.AddRange(parameter.Value); } else { Collector.ParameterModels.Add(parameter); } base.ExitParameters(context); }
public override void ExitObjFull([NotNull] ObjFullContext context) { var obj = new List <Models.IModelObject>(); var orderby = new List <string>(); if (context.orderstatement() != null) { foreach (var item in context.orderstatement()._orderby) { orderby.Add(item.Text); } } foreach (var item in context._pairs) { var p = PairProps.Get(item); obj.Add(p); } ObjProps.Put(context, obj); ObjOrderByProps.Put(context, orderby); base.ExitObjFull(context); }