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); }
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; }
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; }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, TokenSequencePattern pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); SequencePatternExtractRule<CoreMap,Value> valueExtractRule = new SequencePatternExtractRule<>(pattern, valueExtractor, r.matchFindType, r.matchWithResults); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); SequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new SequencePatternExtractRule<>(pattern, exprExtractor, r.matchFindType, r.matchWithResults); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = exprExtractRule; r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; pattern.weight = r.weight; pattern.priority = r.priority; }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, MultiPatternMatcher<CoreMap> pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); MultiSequencePatternExtractRule<CoreMap,Value> valueExtractRule = new MultiSequencePatternExtractRule<>(pattern, valueExtractor); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); MultiSequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new MultiSequencePatternExtractRule<>(pattern, exprExtractor); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; if (r.annotationField != null && r.annotationField != CoreMap.class) { annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = new CoreMapExtractRule<>(env, r.annotationField, exprExtractRule); } else { annotationExtractor.valueExtractor = new CoreMapToListFunctionApplier<>(env, valueExtractRule); r.extractRule = new CoreMapToListExtractRule<>(exprExtractRule); } r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, TokenSequencePattern pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); SequencePatternExtractRule<CoreMap,Value> valueExtractRule = new SequencePatternExtractRule<>(pattern, valueExtractor, r.matchFindType, r.matchWithResults); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); SequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new SequencePatternExtractRule<>(pattern, exprExtractor, r.matchFindType, r.matchWithResults); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; if (r.annotationField != null && r.annotationField != CoreMap.class) { annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = new CoreMapExtractRule<>(env, r.annotationField, exprExtractRule); } else { annotationExtractor.valueExtractor = new CoreMapToListFunctionApplier<>(env, valueExtractRule); r.extractRule = new CoreMapToListExtractRule<>(exprExtractRule); } r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; pattern.weight = r.weight; pattern.priority = r.priority; }
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); }
protected void updateExtractRule(SequenceMatchRules.AnnotationExtractRule r, Env env, Function<CoreMap, Value> extractor) { MatchedExpression.SingleAnnotationExtractor valueExtractor = SequenceMatchRules.createAnnotationExtractor(env,r); valueExtractor.valueExtractor = extractor; r.extractRule = new SequenceMatchRules.CoreMapExtractRule<List<? extends CoreMap>, MatchedExpression >( env, r.annotationField, new SequenceMatchRules.BasicSequenceExtractRule(valueExtractor)); r.filterRule = new SequenceMatchRules.AnnotationMatchedFilter(valueExtractor); }
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; }
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; }
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; }
protected void updateExtractRule(SequenceMatchRules.AnnotationExtractRule r, Env env, Pattern pattern, Function<String, Value> extractor) { MatchedExpression.SingleAnnotationExtractor valueExtractor = SequenceMatchRules.createAnnotationExtractor(env,r); valueExtractor.valueExtractor = new SequenceMatchRules.CoreMapFunctionApplier< String, Value>( env, r.annotationField, extractor); r.extractRule = new SequenceMatchRules.CoreMapExtractRule< String, MatchedExpression >( env, r.annotationField, new SequenceMatchRules.StringPatternExtractRule<MatchedExpression>(pattern, new SequenceMatchRules.StringMatchedExpressionExtractor( valueExtractor, r.matchedExpressionGroup))); r.filterRule = new SequenceMatchRules.AnnotationMatchedFilter(valueExtractor); }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, TokenSequencePattern pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); SequencePatternExtractRule<CoreMap,Value> valueExtractRule = new SequencePatternExtractRule<>(pattern, valueExtractor, r.matchFindType, r.matchWithResults); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); SequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new SequencePatternExtractRule<>(pattern, exprExtractor, r.matchFindType, r.matchWithResults); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = exprExtractRule; r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; pattern.weight = r.weight; pattern.priority = r.priority; }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, TokenSequencePattern pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); SequencePatternExtractRule<CoreMap,Value> valueExtractRule = new SequencePatternExtractRule<>(pattern, valueExtractor, r.matchFindType, r.matchWithResults); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); SequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new SequencePatternExtractRule<>(pattern, exprExtractor, r.matchFindType, r.matchWithResults); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = exprExtractRule; r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; pattern.weight = r.weight; pattern.priority = r.priority; }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, MultiPatternMatcher<CoreMap> pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); MultiSequencePatternExtractRule<CoreMap,Value> valueExtractRule = new MultiSequencePatternExtractRule<>(pattern, valueExtractor); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); MultiSequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new MultiSequencePatternExtractRule<>(pattern, exprExtractor); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; if (r.annotationField != null && r.annotationField != CoreMap.class) { annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = new CoreMapExtractRule<>(env, r.annotationField, exprExtractRule); } else { annotationExtractor.valueExtractor = new CoreMapToListFunctionApplier<>(env, valueExtractRule); r.extractRule = new CoreMapToListExtractRule<>(exprExtractRule); } r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; }
protected void updateExtractRule(AnnotationExtractRule r, Env env, TokenSequencePattern pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor valueExtractor = createAnnotationExtractor(env, r); valueExtractor.valueExtractor = new CoreMapFunctionApplier< List<? extends CoreMap>, Value>( env, r.annotationField, new SequencePatternExtractRule<CoreMap, Value>( pattern, new SequenceMatchResultExtractor<CoreMap>(env, action, result), r.matchFindType, r.matchWithResults)); r.extractRule = new SequencePatternExtractRule<CoreMap, MatchedExpression>(pattern, new SequenceMatchedExpressionExtractor( valueExtractor, r.matchedExpressionGroup), r.matchFindType, r.matchWithResults); r.filterRule = new AnnotationMatchedFilter(valueExtractor); }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, MultiPatternMatcher<CoreMap> pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); MultiSequencePatternExtractRule<CoreMap,Value> valueExtractRule = new MultiSequencePatternExtractRule<>(pattern, valueExtractor); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); MultiSequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new MultiSequencePatternExtractRule<>(pattern, exprExtractor); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; if (r.annotationField != null && r.annotationField != CoreMap.class) { annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = new CoreMapExtractRule<>(env, r.annotationField, exprExtractRule); } else { annotationExtractor.valueExtractor = new CoreMapToListFunctionApplier<>(env, valueExtractRule); r.extractRule = new CoreMapToListExtractRule<>(exprExtractRule); } r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, TokenSequencePattern pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); SequencePatternExtractRule<CoreMap,Value> valueExtractRule = new SequencePatternExtractRule<>(pattern, valueExtractor, r.matchFindType, r.matchWithResults); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); SequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new SequencePatternExtractRule<>(pattern, exprExtractor, r.matchFindType, r.matchWithResults); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; if (r.annotationField != null && r.annotationField != CoreMap.class) { annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = new CoreMapExtractRule<>(env, r.annotationField, exprExtractRule); } else { annotationExtractor.valueExtractor = new CoreMapToListFunctionApplier<>(env, valueExtractRule); r.extractRule = new CoreMapToListExtractRule<>(exprExtractRule); } r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; pattern.weight = r.weight; pattern.priority = r.priority; }
protected static void updateExtractRule(AnnotationExtractRule r, Env env, TokenSequencePattern pattern, Expression action, Expression result) { MatchedExpression.SingleAnnotationExtractor annotationExtractor = createAnnotationExtractor(env, r); SequenceMatchResultExtractor<CoreMap> valueExtractor = new SequenceMatchResultExtractor<>(env, action, result); SequencePatternExtractRule<CoreMap,Value> valueExtractRule = new SequencePatternExtractRule<>(pattern, valueExtractor, r.matchFindType, r.matchWithResults); SequenceMatchedExpressionExtractor exprExtractor = new SequenceMatchedExpressionExtractor( annotationExtractor, r.matchedExpressionGroup ); SequencePatternExtractRule<CoreMap, MatchedExpression> exprExtractRule = new SequencePatternExtractRule<>(pattern, exprExtractor, r.matchFindType, r.matchWithResults); annotationExtractor.expressionToValue = matched -> { if (matched != null && matched.context != null && matched.context instanceof SequenceMatchResult ) { return valueExtractor.apply( (SequenceMatchResult<CoreMap>) matched.context); } else return null; }; if (r.annotationField != null && r.annotationField != CoreMap.class) { annotationExtractor.valueExtractor = new CoreMapFunctionApplier<>(env, r.annotationField, valueExtractRule); r.extractRule = new CoreMapExtractRule<>(env, r.annotationField, exprExtractRule); } else { annotationExtractor.valueExtractor = new CoreMapToListFunctionApplier<>(env, valueExtractRule); r.extractRule = new CoreMapToListExtractRule<>(exprExtractRule); } r.filterRule = new AnnotationMatchedFilter(annotationExtractor); r.pattern = pattern; r.result = result; pattern.weight = r.weight; pattern.priority = r.priority; }
protected void updateExtractRule(AnnotationExtractRule r, Env env, String expr, Expression action, Expression result) { final MatchedExpression.SingleAnnotationExtractor valueExtractor = createAnnotationExtractor(env, r); Pattern pattern = env.getStringPattern(expr); valueExtractor.valueExtractor = new CoreMapFunctionApplier< String, Value >( env, r.annotationField, new StringPatternExtractRule<Value>( pattern, new StringMatchResultExtractor(env, action, result))); r.extractRule = new CoreMapExtractRule< String, MatchedExpression >( env, r.annotationField, new StringPatternExtractRule<MatchedExpression>(pattern, new StringMatchedExpressionExtractor( valueExtractor, r.matchedExpressionGroup))); r.filterRule = new AnnotationMatchedFilter(valueExtractor); }