Class AtomicPatternBuilder
java.lang.Object
fr.inria.rules.integraal.model.data.readable.query.AtomicPatternBuilder
Builder class for constructing instances of
AtomicPattern.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddMandatoryPosition(int position) Adds a mandatory position.addTermConstraint(int position, Class<? extends Term> termClass) Adds a term constraint.build()Builds and returns an instance ofAtomicPattern.withCreateQueriesFunction(BiFunction<AtomicPattern, Map<Integer, Term>, Stream<BasicQuery>> function) Sets a function to generate queries dynamically.withIndexablePatternsFunction(Function<AtomicPattern, Set<Set<Integer>>> function) Sets a function to determine indexable patterns dynamically.withPredicate(Predicate predicate) Sets the predicate for theAtomicPattern.
-
Constructor Details
-
AtomicPatternBuilder
public AtomicPatternBuilder()Creates a new atomic pattern builder.
-
-
Method Details
-
withPredicate
Sets the predicate for theAtomicPattern.- Parameters:
predicate- The predicate to be set.- Returns:
- The builder instance.
-
addMandatoryPosition
Adds a mandatory position.- Parameters:
position- The position to be added.- Returns:
- The builder instance.
-
addTermConstraint
Adds a term constraint.- Parameters:
position- The position to constrain.termClass- The term class allowed at this position.- Returns:
- The builder instance.
-
withIndexablePatternsFunction
public AtomicPatternBuilder withIndexablePatternsFunction(Function<AtomicPattern, Set<Set<Integer>>> function) Sets a function to determine indexable patterns dynamically.- Parameters:
function- The function that modifies indexable patterns.- Returns:
- The builder instance.
-
withCreateQueriesFunction
public AtomicPatternBuilder withCreateQueriesFunction(BiFunction<AtomicPattern, Map<Integer, Term>, Stream<BasicQuery>> function) Sets a function to generate queries dynamically.- Parameters:
function- The function that generates queries from an Atom.- Returns:
- The builder instance.
-
build
Builds and returns an instance ofAtomicPattern.- Returns:
- A new
AtomicPatterninstance.
-