private static void updateExtractRule(SequenceMatchRules.AnnotationExtractRule r, Env env, Function<CoreMap, Value> extractor) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = SequenceMatchRules.createAnnotationExtractor(env,r); annotationExtractor.valueExtractor = extractor; r.extractRule = new SequenceMatchRules.CoreMapExtractRule<>( env, r.annotationField, new SequenceMatchRules.BasicSequenceExtractRule(annotationExtractor)); r.filterRule = new SequenceMatchRules.AnnotationMatchedFilter(annotationExtractor); }
final public SequenceMatchRules.Rule AssignmentRule(Env env) throws ParseException { AssignableExpression var; Expression result; var = AssignableExpression(env); jj_consume_token(29); result = Expression(env); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case 30: jj_consume_token(30); break; default: jj_la1[1] = jj_gen; ; } {if (true) return SequenceMatchRules.createAssignmentRule(env, var, result);} throw new Error("Missing return statement in function"); }
result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createExtractionRule(env, null, stringRegex, result);} } else if (jj_2_5(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createExtractionRule(env, null, TokenSequencePattern.compile(expr), result);} } else if (jj_2_6(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createTokenPatternRule(env, expr, result);} } else if (jj_2_7(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createTextPatternRule(env, stringRegex, result);} } else { jj_consume_token(-1);
public static AnnotationExtractRule createExtractionRule(Env env, String ruleType, Object pattern, Expression result) { if (ruleType == null && env != null) { ruleType = (String) env.getDefaults().get("ruleType"); } AnnotationExtractRuleCreator ruleCreator = lookupExtractRuleCreator(env, ruleType); if (ruleCreator != null) { Map<String,Object> attributes = new HashMap<>();//Generics.newHashMap(); attributes.put("ruleType", ruleType); attributes.put("pattern", pattern); attributes.put("result", result); return ruleCreator.create(env, attributes); } else { throw new IllegalArgumentException("Unknown rule type: " + ruleType); } }
public static Rule createRule(Env env, Expressions.CompositeValue cv) { Map<String, Object> attributes; cv = cv.simplifyNoTypeConversion(env); attributes = new HashMap<>();//Generics.newHashMap(); for (String s:cv.getAttributes()) { attributes.put(s, cv.getExpression(s)); } return createExtractionRule(env, attributes); }
final public SequenceMatchRules.Rule Rule(Env env) throws ParseException { SequenceMatchRules.Rule rule; Expressions.CompositeValue cv; if (jj_2_1(3)) { rule = ExpressionExtractorRule(env); } else if (jj_2_2(3)) { rule = AssignmentRule(env); } else if (jj_2_3(3)) { cv = CompositeFieldValue(env); rule = SequenceMatchRules.createRule(env, cv); } else { jj_consume_token(-1); throw new ParseException(); } {if (true) return rule;} throw new Error("Missing return statement in function"); }
private SequenceMatchRules.AnnotationExtractRule createMergedRule(SequenceMatchRules.AnnotationExtractRule aerTemplate, List<TokenSequencePattern> patterns) { return SequenceMatchRules.createMultiTokenPatternRule(env, aerTemplate, patterns); }
protected static AnnotationExtractRule createExtractionRule(Env env, Map<String,Object> attributes) { String ruleType = (String) Expressions.asObject(env, attributes.get("ruleType")); if (ruleType == null && env != null) { ruleType = (String) env.getDefaults().get("ruleType"); } AnnotationExtractRuleCreator ruleCreator = lookupExtractRuleCreator(env, ruleType); if (ruleCreator != null) { return ruleCreator.create(env, attributes); } else { throw new IllegalArgumentException("Unknown rule type: " + ruleType); } }
public static Rule createRule(Env env, Expressions.CompositeValue cv) { Map<String, Object> attributes; cv = cv.simplifyNoTypeConversion(env); attributes = new HashMap<>();//Generics.newHashMap(); for (String s:cv.getAttributes()) { attributes.put(s, cv.getExpression(s)); } return createExtractionRule(env, attributes); }
final public SequenceMatchRules.Rule Rule(Env env) throws ParseException { SequenceMatchRules.Rule rule; Expressions.CompositeValue cv; if (jj_2_1(3)) { rule = ExpressionExtractorRule(env); } else if (jj_2_2(3)) { rule = AssignmentRule(env); } else if (jj_2_3(3)) { cv = CompositeFieldValue(env); rule = SequenceMatchRules.createRule(env, cv); } else { jj_consume_token(-1); throw new ParseException(); } {if (true) return rule;} throw new Error("Missing return statement in function"); }
private SequenceMatchRules.AnnotationExtractRule createMergedRule(SequenceMatchRules.AnnotationExtractRule aerTemplate, List<TokenSequencePattern> patterns) { return SequenceMatchRules.createMultiTokenPatternRule(env, aerTemplate, patterns); }
result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createExtractionRule(env, null, stringRegex, result);} } else if (jj_2_5(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createExtractionRule(env, null, TokenSequencePattern.compile(expr), result);} } else if (jj_2_6(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createTokenPatternRule(env, expr, result);} } else if (jj_2_7(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createTextPatternRule(env, stringRegex, result);} } else { jj_consume_token(-1);
private static void updateExtractRule(SequenceMatchRules.AnnotationExtractRule r, Env env, Pattern pattern, Function<String, Value> extractor) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = SequenceMatchRules.createAnnotationExtractor(env,r); annotationExtractor.valueExtractor = new SequenceMatchRules.CoreMapFunctionApplier<>( env, r.annotationField, extractor); r.extractRule = new SequenceMatchRules.CoreMapExtractRule<>( env, r.annotationField, new SequenceMatchRules.StringPatternExtractRule<>(pattern, new SequenceMatchRules.StringMatchedExpressionExtractor(annotationExtractor, r.matchedExpressionGroup))); r.filterRule = new SequenceMatchRules.AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; }
public static AnnotationExtractRule createExtractionRule(Env env, String ruleType, Object pattern, Expression result) { if (ruleType == null && env != null) { ruleType = (String) env.getDefaults().get("ruleType"); } AnnotationExtractRuleCreator ruleCreator = lookupExtractRuleCreator(env, ruleType); if (ruleCreator != null) { Map<String,Object> attributes = new HashMap<>();//Generics.newHashMap(); attributes.put("ruleType", ruleType); attributes.put("pattern", pattern); attributes.put("result", result); return ruleCreator.create(env, attributes); } else { throw new IllegalArgumentException("Unknown rule type: " + ruleType); } }
public static Rule createRule(Env env, Expressions.CompositeValue cv) { Map<String, Object> attributes; cv = cv.simplifyNoTypeConversion(env); attributes = new HashMap<>();//Generics.newHashMap(); for (String s:cv.getAttributes()) { attributes.put(s, cv.getExpression(s)); } return createExtractionRule(env, attributes); }
final public SequenceMatchRules.Rule AssignmentRule(Env env) throws ParseException { AssignableExpression var; Expression result; var = AssignableExpression(env); jj_consume_token(29); result = Expression(env); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case 30: jj_consume_token(30); break; default: jj_la1[1] = jj_gen; ; } {if (true) return SequenceMatchRules.createAssignmentRule(env, var, result);} throw new Error("Missing return statement in function"); }
final public SequenceMatchRules.Rule Rule(Env env) throws ParseException { SequenceMatchRules.Rule rule; Expressions.CompositeValue cv; if (jj_2_1(3)) { rule = ExpressionExtractorRule(env); } else if (jj_2_2(3)) { rule = AssignmentRule(env); } else if (jj_2_3(3)) { cv = CompositeFieldValue(env); rule = SequenceMatchRules.createRule(env, cv); } else { jj_consume_token(-1); throw new ParseException(); } {if (true) return rule;} throw new Error("Missing return statement in function"); }
private SequenceMatchRules.AnnotationExtractRule createMergedRule(SequenceMatchRules.AnnotationExtractRule aerTemplate, List<TokenSequencePattern> patterns) { return SequenceMatchRules.createMultiTokenPatternRule(env, aerTemplate, patterns); }
result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createExtractionRule(env, null, stringRegex, result);} } else if (jj_2_5(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createExtractionRule(env, null, TokenSequencePattern.compile(expr), result);} } else if (jj_2_6(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createTokenPatternRule(env, expr, result);} } else if (jj_2_7(2)) { jj_consume_token(22); result = Expression(env); jj_consume_token(24); {if (true) return SequenceMatchRules.createTextPatternRule(env, stringRegex, result);} } else { jj_consume_token(-1);
protected static void updateExtractRule(AnnotationExtractRule r, Env env, String expr, Expression action, Expression result) { final MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); Pattern pattern = env.getStringPattern(expr); StringMatchResultExtractor valueExtractor = new StringMatchResultExtractor(env, action, result); StringPatternExtractRule<Value> valueExtractRule = new StringPatternExtractRule<>(pattern, valueExtractor); StringMatchedExpressionExtractor exprExtractor = new StringMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); StringPatternExtractRule<MatchedExpression> exprExtractRule = new StringPatternExtractRule<>(pattern, exprExtractor); annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = new CoreMapExtractRule<>(env, r.annotationField, exprExtractRule); r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; }