Package dev.gecode.iris.build
Javadoc 27 generates this reference during each site build from the exported packages and the annotation processor. The Java guide shows the API in use.
@NullMarked
package dev.gecode.iris.build
Builds Iris reader specs from Java code, with typed handles to read the data.
Iris holds the statements, handle factories, types, patterns and
expression functions; import its members statically. A handle such as int2("machine") is
an IntField, which is both an expression in the spec and a Field that Data.get(Field) reads with its Java type.
The builder emits Iris text and parses it with Spec.parse(String, String), so a built spec reads exactly as its text does. Builder.source() gives that text. A mistake throws BuildException, whose call site is the line of the caller's code that made
the statement.
-
ClassDescription
alphabet "symbols", which reads each symbol as its index.An option of asectionsarm.The statements of a reader spec, fromIris.builder(Runnable).Thrown when a reader spec cannot be built: a builder check failed, or the language rejected the emitted text.The check that failed.The discard_: a target that reads without storing, and{_}in a pattern.Domain<E>What a comprehension ranges over: an array expression, which gives its elements asE, or the records of a repeat, which it gives asRecordExpr.ForIris.forward(String, Class): a dynamic handle at depth 0.An expression with no static type, which every method accepts.A handle whose value type or depth is open:data.get(handle)returns theValue, or null if the entry is absent.An Iris expression.A float expression.FloatField<V extends @Nullable Object>A handle of a float entry.A type that reads floats.The host constants of Gecode.HandleKind<H extends Field<?>>The kind of handle thatIris.forward(String, Class)makes, named by a class literal such asInt.class.ForIris.forward(String, Class): an integer handle at depth 0.An expression that integer arithmetic and logic take: an integer or a dynamic value.An integer expression.A handle of an integer entry.A type that reads integers.Builds reader specs from Java code.The type and end of aliststatement, fromtype.until(end).ForIris.forward(String, Class): anumhandle at depth 0.An expression that comparisons take: an integer, a float, anumor a dynamic value.Anumexpression: an integer or a float, decided by the data.A handle of anumentry, whose values are integers or floats as the data decides.A type that reads integers or floats, decided by the data.Over<E>A domain whose comprehension variable has a chosen name, fromIris.over(Domain).A part of a line pattern other than text, a handle orIris.discard():Iris.capture(Field, Type),Iris.ref(Field),Iris.validate(Type),Iris.blank(),Iris.discard(Type)orIris.restOfLine().A line pattern, fromIris.pattern(Object...): text, with parts that capture, match or skip what stands there.The integers from a lower bound up:lo...ForIris.forward(String, Class): a float handle at depth 0.One record: selected by index, or a comprehension's variable.A list of records: all the records of a repeat, or a nested list.The records of a repeat.ForIris.forward(String, Class): a string handle at depth 0.A string expression.StringField<V extends @Nullable Object>A handle of a string entry.A type that reads strings.An expression that string equality takes: a string or a dynamic value.Marks a class as a layer over this package, such as a builder in another JVM language, whose frames call sites skip.A reading type, such asint,0..<norword.until "text"...: the terminators that end a repeat or sections.