Class Translator.ScriptTranslator.AbstractTypeTranslator
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.process.traversal.Translator.ScriptTranslator.AbstractTypeTranslator
-
- All Implemented Interfaces:
BiFunction<String,Object,Script>,Translator.ScriptTranslator.TypeTranslator
- Direct Known Subclasses:
DotNetTranslator.DefaultTypeTranslator,GolangTranslator.DefaultTypeTranslator,GroovyTranslator.DefaultTypeTranslator,JavascriptTranslator.DefaultTypeTranslator,PythonTranslator.DefaultTypeTranslator
- Enclosing interface:
- Translator.ScriptTranslator
public abstract static class Translator.ScriptTranslator.AbstractTypeTranslator extends Object implements Translator.ScriptTranslator.TypeTranslator
-
-
Field Summary
Fields Modifier and Type Field Description protected static StringANONYMOUS_TRAVERSAL_PREFIXprotected Scriptscriptprotected booleanwithParameters
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractTypeTranslator(boolean withParameters)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Scriptapply(String traversalSource, Object o)protected ScriptconvertToScript(Object object)For each operator argument, if withParameters set true, try parametrization as follows: ----------------------------------------------- if unpack, why ? ObjectType ----------------------------------------------- (Yes) Bytecode.Binding (Recursion, No) Bytecode (Recursion, No) Traversal (Yes) String (Recursion, No) Set (Recursion, No) List (Recursion, No) Map (Yes) Long (Yes) Double (Yes) Float (Yes) Integer (Yes) Timestamp (Yes) Date (Yes) Uuid (Recursion, No) P (Enumeration, No) SackFunctions.Barrier (Enumeration, No) VertexProperty.Cardinality (Enumeration, No) TraversalOptionParent.Pick (Enumeration, No) Enum (Recursion, No) Vertex (Recursion, No) Edge (Recursion, No) VertexProperty (Yes) Lambda (Recursion, No) TraversalStrategyProxy (Enumeration, No) TraversalStrategy (Yes) Other -------------------------------------------------protected StringgetAnonymousTraversalPrefix()Gets the syntax for the spawn of an anonymous traversal which is traditionally the double underscore.protected abstract StringgetNullSyntax()Gets the syntax for anullvalue as a string representation.protected abstract StringgetSyntax(Boolean o)Take the boolean argument and convert it to a string representation in the target language.protected abstract StringgetSyntax(Number o)Take the numeric argument and convert it to a string representation in the target language.protected abstract StringgetSyntax(String o)Take the string argument and convert it to a string representation in the target language (i.e.protected abstract StringgetSyntax(Timestamp o)Take theTimestampargument and convert it to a string representation in the target language.protected abstract StringgetSyntax(Date o)Take theDateargument and convert it to a string representation in the target language.protected abstract StringgetSyntax(UUID o)Take theUUIDargument and convert it to a string representation in the target language.protected abstract StringgetSyntax(Pick o)Take thePickargument and convert it to a string representation in the target language.protected abstract StringgetSyntax(SackFunctions.Barrier o)Take theSackFunctions.Barrierargument and convert it to a string representation in the target language.protected abstract StringgetSyntax(VertexProperty.Cardinality o)Take theVertexProperty.Cardinalityargument and convert it to a string representation in the target language.protected abstract StringgetSyntax(Lambda o)Take theLambdaargument and convert it to a string representation in the target language.protected abstract ScriptproduceCardinalityValue(Bytecode o)protected abstract ScriptproduceScript(Class<?> o)Take theClassand writes the syntax directly to the memberscriptvariable.protected abstract ScriptproduceScript(Enum<?> o)Take theEnumand writes the syntax directly to the memberscriptvariable.protected abstract ScriptproduceScript(String traversalSource, Bytecode o)protected abstract ScriptproduceScript(List<?> o)Take theListand writes the syntax directly to the memberscriptvariable.protected abstract ScriptproduceScript(Map<?,?> o)Take theMapand writes the syntax directly to the memberscriptvariable.protected abstract ScriptproduceScript(Set<?> o)Take theSetand writes the syntax directly to the memberscriptvariable.protected abstract ScriptproduceScript(P<?> p)protected abstract ScriptproduceScript(TraversalStrategyProxy<?> o)Take theTraversalStrategyProxyand writes the syntax directly to the memberscriptvariable.protected abstract ScriptproduceScript(Edge o)protected abstract ScriptproduceScript(Vertex o)protected abstract ScriptproduceScript(VertexProperty<?> o)Take theVertexPropertyand writes the syntax directly to the memberscriptvariable.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.util.function.BiFunction
andThen
-
-
-
-
Field Detail
-
ANONYMOUS_TRAVERSAL_PREFIX
protected static final String ANONYMOUS_TRAVERSAL_PREFIX
- See Also:
- Constant Field Values
-
withParameters
protected final boolean withParameters
-
script
protected final Script script
-
-
Method Detail
-
apply
public Script apply(String traversalSource, Object o)
- Specified by:
applyin interfaceBiFunction<String,Object,Script>
-
getAnonymousTraversalPrefix
protected String getAnonymousTraversalPrefix()
Gets the syntax for the spawn of an anonymous traversal which is traditionally the double underscore.
-
getNullSyntax
protected abstract String getNullSyntax()
Gets the syntax for anullvalue as a string representation.
-
getSyntax
protected abstract String getSyntax(String o)
Take the string argument and convert it to a string representation in the target language (i.e. escape, enclose in appropriate quotes, etc.)
-
getSyntax
protected abstract String getSyntax(Boolean o)
Take the boolean argument and convert it to a string representation in the target language.
-
getSyntax
protected abstract String getSyntax(Date o)
Take theDateargument and convert it to a string representation in the target language.
-
getSyntax
protected abstract String getSyntax(Timestamp o)
Take theTimestampargument and convert it to a string representation in the target language.
-
getSyntax
protected abstract String getSyntax(UUID o)
Take theUUIDargument and convert it to a string representation in the target language.
-
getSyntax
protected abstract String getSyntax(Lambda o)
Take theLambdaargument and convert it to a string representation in the target language.
-
getSyntax
protected abstract String getSyntax(SackFunctions.Barrier o)
Take theSackFunctions.Barrierargument and convert it to a string representation in the target language.
-
getSyntax
protected abstract String getSyntax(VertexProperty.Cardinality o)
Take theVertexProperty.Cardinalityargument and convert it to a string representation in the target language.
-
getSyntax
protected abstract String getSyntax(Pick o)
Take thePickargument and convert it to a string representation in the target language.
-
getSyntax
protected abstract String getSyntax(Number o)
Take the numeric argument and convert it to a string representation in the target language. Languages that can discern differences in types of numbers will wish to further check the type of theNumberinstance itself (i.e.Double,Integer, etc.)
-
produceScript
protected abstract Script produceScript(Set<?> o)
Take theSetand writes the syntax directly to the memberscriptvariable.
-
produceScript
protected abstract Script produceScript(List<?> o)
Take theListand writes the syntax directly to the memberscriptvariable.
-
produceScript
protected abstract Script produceScript(Map<?,?> o)
Take theMapand writes the syntax directly to the memberscriptvariable.
-
produceScript
protected abstract Script produceScript(Class<?> o)
Take theClassand writes the syntax directly to the memberscriptvariable.
-
produceScript
protected abstract Script produceScript(Enum<?> o)
Take theEnumand writes the syntax directly to the memberscriptvariable.
-
produceScript
protected abstract Script produceScript(VertexProperty<?> o)
Take theVertexPropertyand writes the syntax directly to the memberscriptvariable.
-
produceScript
protected abstract Script produceScript(TraversalStrategyProxy<?> o)
Take theTraversalStrategyProxyand writes the syntax directly to the memberscriptvariable.
-
convertToScript
protected Script convertToScript(Object object)
For each operator argument, if withParameters set true, try parametrization as follows: ----------------------------------------------- if unpack, why ? ObjectType ----------------------------------------------- (Yes) Bytecode.Binding (Recursion, No) Bytecode (Recursion, No) Traversal (Yes) String (Recursion, No) Set (Recursion, No) List (Recursion, No) Map (Yes) Long (Yes) Double (Yes) Float (Yes) Integer (Yes) Timestamp (Yes) Date (Yes) Uuid (Recursion, No) P (Enumeration, No) SackFunctions.Barrier (Enumeration, No) VertexProperty.Cardinality (Enumeration, No) TraversalOptionParent.Pick (Enumeration, No) Enum (Recursion, No) Vertex (Recursion, No) Edge (Recursion, No) VertexProperty (Yes) Lambda (Recursion, No) TraversalStrategyProxy (Enumeration, No) TraversalStrategy (Yes) Other -------------------------------------------------- Parameters:
object-- Returns:
- String Repres
-
-