Package net.thisptr.jackson.jq
Class Scope
- java.lang.Object
-
- net.thisptr.jackson.jq.Scope
-
public class Scope extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
Scope.AbstractValueWithPath
private static class
Scope.ValueSupplierImpl
static interface
Scope.ValueWithPath
private static class
Scope.ValueWithPathImpl
-
Field Summary
Fields Modifier and Type Field Description private Module
currentModule
private static com.fasterxml.jackson.databind.ObjectMapper
DEFAULT_MAPPER
private java.util.Map<java.lang.String,Function>
functions
private java.util.Map<java.lang.String,com.fasterxml.jackson.databind.JsonNode>
importedData
private java.util.Map<java.lang.String,java.util.LinkedList<Module>>
importedModules
private com.fasterxml.jackson.databind.ObjectMapper
mapper
private ModuleLoader
moduleLoader
private Scope
parentScope
private java.util.Map<java.lang.String,Scope.ValueWithPath>
values
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addFunction(java.lang.String name, int n, Function q)
void
addFunction(java.lang.String name, Function q)
void
addImportedModule(java.lang.String name, Module module)
private java.util.Map<java.lang.String,java.lang.String>
debugFunctions()
Module
getCurrentModule()
Function
getFunction(java.lang.String name, int nargs)
private Function
getFunctionRecursive(java.lang.String name)
com.fasterxml.jackson.databind.JsonNode
getImportedData(java.lang.String name)
java.util.List<Module>
getImportedModules(java.lang.String name)
private void
getImportedModules(java.util.List<Module> modules, java.lang.String name)
java.util.Map<java.lang.String,Function>
getLocalFunctions()
ModuleLoader
getModuleLoader()
com.fasterxml.jackson.databind.ObjectMapper
getObjectMapper()
Scope
getParentScope()
com.fasterxml.jackson.databind.JsonNode
getValue(java.lang.String name)
Scope.ValueWithPath
getValueWithPath(java.lang.String name)
static Scope
newChildScope(Scope scope)
static Scope
newEmptyScope()
void
setCurrentModule(Module module)
void
setImportedData(java.lang.String name, com.fasterxml.jackson.databind.JsonNode data)
void
setModuleLoader(ModuleLoader moduleLoader)
void
setValue(java.lang.String name, com.fasterxml.jackson.databind.JsonNode value)
void
setValue(java.lang.String name, java.util.function.Supplier<com.fasterxml.jackson.databind.JsonNode> supplier)
void
setValueWithPath(java.lang.String name, com.fasterxml.jackson.databind.JsonNode value, Path path)
void
setValueWithPath(java.lang.String name, java.util.function.Supplier<com.fasterxml.jackson.databind.JsonNode> value, Path path)
-
-
-
Field Detail
-
DEFAULT_MAPPER
private static final com.fasterxml.jackson.databind.ObjectMapper DEFAULT_MAPPER
-
parentScope
private Scope parentScope
-
functions
private java.util.Map<java.lang.String,Function> functions
-
importedModules
private java.util.Map<java.lang.String,java.util.LinkedList<Module>> importedModules
-
importedData
private java.util.Map<java.lang.String,com.fasterxml.jackson.databind.JsonNode> importedData
-
moduleLoader
private ModuleLoader moduleLoader
-
values
private java.util.Map<java.lang.String,Scope.ValueWithPath> values
-
mapper
private com.fasterxml.jackson.databind.ObjectMapper mapper
-
currentModule
private Module currentModule
-
-
Constructor Detail
-
Scope
private Scope(Scope parentScope)
-
-
Method Detail
-
debugFunctions
private java.util.Map<java.lang.String,java.lang.String> debugFunctions()
-
newEmptyScope
public static Scope newEmptyScope()
-
addFunction
public void addFunction(java.lang.String name, int n, Function q)
-
addFunction
public void addFunction(java.lang.String name, Function q)
-
getFunction
public Function getFunction(java.lang.String name, int nargs)
-
getLocalFunctions
public java.util.Map<java.lang.String,Function> getLocalFunctions()
-
getParentScope
public Scope getParentScope()
-
getFunctionRecursive
private Function getFunctionRecursive(java.lang.String name)
-
setValue
public void setValue(java.lang.String name, com.fasterxml.jackson.databind.JsonNode value)
-
setValue
public void setValue(java.lang.String name, java.util.function.Supplier<com.fasterxml.jackson.databind.JsonNode> supplier)
-
setValueWithPath
public void setValueWithPath(java.lang.String name, com.fasterxml.jackson.databind.JsonNode value, Path path)
-
setValueWithPath
public void setValueWithPath(java.lang.String name, java.util.function.Supplier<com.fasterxml.jackson.databind.JsonNode> value, Path path)
-
getValueWithPath
public Scope.ValueWithPath getValueWithPath(java.lang.String name)
-
getValue
public com.fasterxml.jackson.databind.JsonNode getValue(java.lang.String name)
-
getObjectMapper
public com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()
-
setImportedData
public void setImportedData(java.lang.String name, com.fasterxml.jackson.databind.JsonNode data)
-
getImportedData
public com.fasterxml.jackson.databind.JsonNode getImportedData(java.lang.String name)
-
addImportedModule
public void addImportedModule(java.lang.String name, Module module)
-
getImportedModules
public java.util.List<Module> getImportedModules(java.lang.String name)
-
getImportedModules
private void getImportedModules(java.util.List<Module> modules, java.lang.String name)
-
setModuleLoader
public void setModuleLoader(ModuleLoader moduleLoader)
-
getModuleLoader
public ModuleLoader getModuleLoader()
-
getCurrentModule
public Module getCurrentModule()
-
setCurrentModule
public void setCurrentModule(Module module)
-
-