Package org.rumbledb.context
Class StaticContext
java.lang.Object
org.rumbledb.context.StaticContext
- All Implemented Interfaces:
com.esotericsoftware.kryo.KryoSerializable,Serializable
public class StaticContext
extends Object
implements Serializable, com.esotericsoftware.kryo.KryoSerializable
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionStaticContext(URI staticBaseURI, RumbleRuntimeConfiguration configuration) StaticContext(StaticContext parent) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddDecimalFormat(Name name, DecimalFormatDefinition decimalFormat, ExceptionMetadata metadata) voidaddFunctionSignature(FunctionIdentifier identifier, FunctionSignature signature) voidaddVariable(Name varName, SequenceType type, ExceptionMetadata metadata) voidaddVariable(Name varName, SequenceType type, ExceptionMetadata metadata, boolean isAssignable) voidbooleanbindNamespace(String prefix, String namespace) static StringgetBuiltinNamespaceBinding(String prefix) Built-in namespace bindings (fn, xs, map, ...) used when resolving QNames without a full static context.intgetFunctionSignature(FunctionIdentifier identifier) booleangetIsAssignable(Name name) Returns the default serialization parameters stored in the static context.getVariableMetadata(Name varName) getVariableSequenceType(Name varName) getVariableStorageMode(Name varName) booleanhasVariable(Name variableName) booleanhasVariableInScopeOnly(Name variableName) voidimportModuleContext(StaticContext moduleContext) voidincrementArities(StaticContext stopContext, Set<Name> varToExclude) booleanbooleanvoidoverrideSerializationParameter(String name, String value) Override the serialization parameters with the provided parameter name and value.voidread(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) voidreplaceVariableSequenceType(Name varName, SequenceType newSequenceType) resolveNamespace(String prefix) voidsetContextItemStaticType(SequenceType contextItemStaticType) voidsetCurrentMutabilityLevel(int currentMutabilityLevel) voidsetDefaultDecimalFormat(DecimalFormatDefinition decimalFormat) voidDefault function namespace URI for unprefixed function names (XQuery prolog).voidsetEmptySequenceOrderLeast(boolean emptySequenceOrderLeast) voidsetSerializationParameters(SerializationParameters serializationParameters) Sets the default serialization parameters at this static context level.voidsetStaticBaseUri(URI staticBaseURI) voidsetUserDefinedFunctionsExecutionModes(UserDefinedFunctionExecutionModes staticallyKnownFunctionSignatures) voidsetVariableStorageMode(Name varName, ExecutionMode mode) voidshow()toString()voidwrite(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output)
-
Constructor Details
-
StaticContext
public StaticContext() -
StaticContext
-
StaticContext
-
-
Method Details
-
getParent
-
getRumbleConfiguration
-
getStaticBaseURI
-
setStaticBaseUri
-
isInScope
-
getFunctionSignature
-
replaceVariableSequenceType
-
getVariableSequenceType
-
getVariableMetadata
-
getVariableStorageMode
-
setVariableStorageMode
-
addVariable
-
addVariable
public void addVariable(Name varName, SequenceType type, ExceptionMetadata metadata, boolean isAssignable) -
addFunctionSignature
-
getInScopeVariables
-
show
public void show() -
toString
-
hasVariable
-
hasVariableInScopeOnly
-
bindNamespace
-
resolveNamespace
-
getInScopeNamespaceBindings
-
write
public void write(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) - Specified by:
writein interfacecom.esotericsoftware.kryo.KryoSerializable
-
read
public void read(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) - Specified by:
readin interfacecom.esotericsoftware.kryo.KryoSerializable
-
getSerializationParameters
Returns the default serialization parameters stored in the static context. Spec references: - XQuery 3.1 Static Context Components (link: https://www.w3.org/TR/xquery-31/#id-xq-static-context-components) - Serialization 3.1 — Serialization Parameters (link: https://www.w3.org/TR/xslt-xquery-serialization-31/#serparam) -
setSerializationParameters
Sets the default serialization parameters at this static context level. -
overrideSerializationParameter
Override the serialization parameters with the provided parameter name and value. Throws InvalidSerializationParameterValueException for invalid inputs.- Parameters:
name- the name of the parameter to updatevalue- the value of the parameter to update- Throws:
InvalidSerializationParameterValueException- if the parameter value is invalid
-
importModuleContext
-
setUserDefinedFunctionsExecutionModes
public void setUserDefinedFunctionsExecutionModes(UserDefinedFunctionExecutionModes staticallyKnownFunctionSignatures) -
getUserDefinedFunctionsExecutionModes
-
setEmptySequenceOrderLeast
public void setEmptySequenceOrderLeast(boolean emptySequenceOrderLeast) -
setDefaultFunctionNamespaceUri
Default function namespace URI for unprefixed function names (XQuery prolog). Root/module context only. -
getDefaultFunctionNamespaceUri
- Returns:
- the declared default function namespace URI, or null if not set (use JSONiq default function NS)
-
isEmptySequenceOrderLeast
public boolean isEmptySequenceOrderLeast() -
getModuleContext
-
getContextItemStaticType
-
setContextItemStaticType
-
incrementArities
-
bindDefaultNamespaces
public void bindDefaultNamespaces() -
getBuiltinNamespaceBinding
Built-in namespace bindings (fn, xs, map, ...) used when resolving QNames without a full static context. -
getInScopeSchemaTypes
-
getCurrentMutabilityLevel
public int getCurrentMutabilityLevel() -
setCurrentMutabilityLevel
public void setCurrentMutabilityLevel(int currentMutabilityLevel) -
getIsAssignable
-
setDefaultDecimalFormat
-
addDecimalFormat
public void addDecimalFormat(Name name, DecimalFormatDefinition decimalFormat, ExceptionMetadata metadata) -
getDefaultDecimalFormat
-
getDecimalFormats
-