private static IEnumerable <ExpressionDef> ReadExpressionDefs(XNamespace ns, XNamespace elmns, IEnumerable <XElement> expressionDefs) { return (from expressionDef in expressionDefs select new ExpressionDef { Name = expressionDef.Attribute("name").Value, Expression = NodeReader.ReadASTNode(expressionDef.Element(elmns + "expression")) }); }
private static IEnumerable <ExpressionDef> ReadTriggers(XNamespace ns, XNamespace elmns, IEnumerable <XElement> triggers) { return (from trigger in triggers let triggerDef = trigger.Element(ns + "def") select new ExpressionDef { Name = triggerDef.Attribute("name").Value, Expression = NodeReader.ReadASTNode(triggerDef.Element(elmns + "expression")) }); }
private static IEnumerable <ASTNode> ReadConditions(XNamespace ns, XNamespace elmns, IEnumerable <XElement> conditions) { return (from condition in conditions select NodeReader.ReadASTNode(condition.Element(ns + "logic"))); }
private static IEnumerable <ParameterDef> ReadParameters(XNamespace ns, XNamespace elmns, IEnumerable <XElement> parameters) { return (from parameter in parameters let defaultNode = parameter.Element(elmns + "expression") select new ParameterDef { Name = parameter.Attribute("name").Value, TypeName = parameter.ExpandName(parameter.Attribute("parameterType").Value), Default = defaultNode != null?NodeReader.ReadASTNode(defaultNode) : null }); }