Class PrologBuilder
java.lang.Object
org.rumbledb.compiler.translation.PrologBuilder
Handles shared prolog translation state and validation for both Jsoniq and XQuery frontends.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddContextItem(VariableDeclaration declaration) voidaddFunction(FunctionDeclaration declaration) voidaddOption(OptionDeclaration declaration) voidaddType(TypeDeclaration declaration) voidaddVariable(VariableDeclaration declaration) voidapplyBaseUri(String literal, ExceptionMetadata metadata) voidapplyBoundarySpace(boolean preserve, ExceptionMetadata metadata) voidapplyConstruction(boolean preserve, ExceptionMetadata metadata) voidapplyCopyNamespaces(boolean preserve, boolean inherit, ExceptionMetadata metadata) voidapplyDecimalFormat(boolean isDefaultDecimalFormat, Name name, List<String> propertyNames, List<String> propertyValues, ExceptionMetadata metadata) voidapplyDefaultCollation(String literal, ExceptionMetadata literalMetadata, ExceptionMetadata metadata) voidapplyDefaultNamespace(boolean function, String uri, ExceptionMetadata metadata) voidapplyEmptyOrder(boolean least, ExceptionMetadata metadata) voidapplyOrderingMode(ExceptionMetadata metadata) Applies the ordering mode declaration (W3C XQuery 3.1 §4.7).voidapplyUnsupportedHeader(ExceptionMetadata metadata) voidbindNamespace(String prefix, String uri, ExceptionMetadata metadata) build(ExceptionMetadata metadata) voidfinishHeader(ExceptionMetadata metadata) Complete header processing by loading schemas before any declaration is translated.voidimportModule(LibraryModule module, ExceptionMetadata metadata) voidimportSchema(SchemaImport schema, ExceptionMetadata metadata)
-
Constructor Details
-
PrologBuilder
-
-
Method Details
-
bindNamespace
-
applyDefaultNamespace
-
applyConstruction
-
applyBoundarySpace
-
applyEmptyOrder
-
applyOrderingMode
Applies the ordering mode declaration (W3C XQuery 3.1 §4.7). RumbleDB always preserves the order of sequences, we do not need to store the ordering mode in the module context. We only record that it was declared in the prolog to detect duplicates ([err:XQST0065]).- Parameters:
metadata- the location metadata
-
applyDecimalFormat
-
applyCopyNamespaces
-
applyBaseUri
-
applyDefaultCollation
public void applyDefaultCollation(String literal, ExceptionMetadata literalMetadata, ExceptionMetadata metadata) -
importModule
-
importSchema
-
applyUnsupportedHeader
-
finishHeader
Complete header processing by loading schemas before any declaration is translated. -
addVariable
-
addContextItem
-
addFunction
-
addType
-
addOption
-
build
-