org.apache.tinkerpop.gremlin.process.traversal

## 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, 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 and Description
    --- | ---
    `protected static String` | `ANONYMOUS_TRAVERSAL_PREFIX`
    `protected Script` | `script`
    `protected boolean` | `withParameters`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `AbstractTypeTranslator(boolean withParameters)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Script` | `apply(String traversalSource, Object o)`
    `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 -------------------------------------------------
    `protected String` | `getAnonymousTraversalPrefix()` Gets the syntax for the spawn of an anonymous traversal which is traditionally the double underscore.
    `protected abstract String` | `getNullSyntax()` Gets the syntax for a `null` value as a string representation.
    `protected abstract String` | `getSyntax(Boolean o)` Take the boolean argument and convert it to a string representation in the target language.
    `protected abstract String` | `getSyntax(Date o)` Take the `Date` argument and convert it to a string representation in the target language.
    `protected abstract String` | `getSyntax(Lambda o)` Take the `Lambda` argument and convert it to a string representation in the target language.
    `protected abstract String` | `getSyntax(Number o)` Take the numeric argument and convert it to a string representation in the target language.
    `protected abstract String` | `getSyntax(SackFunctions.Barrier o)` Take the `SackFunctions.Barrier` argument and convert it to a string representation in the target language.
    `protected abstract String` | `getSyntax(String o)` Take the string argument and convert it to a string representation in the target language (i.e.
    `protected abstract String` | `getSyntax(Timestamp o)` Take the `Timestamp` argument and convert it to a string representation in the target language.
    `protected abstract String` | `getSyntax(TraversalOptionParent.Pick o)` Take the `TraversalOptionParent.Pick` argument and convert it to a string representation in the target language.
    `protected abstract String` | `getSyntax(UUID o)` Take the `UUID` argument and convert it to a string representation in the target language.
    `protected abstract String` | `getSyntax(VertexProperty.Cardinality o)` Take the `VertexProperty.Cardinality` argument and convert it to a string representation in the target language.
    `protected abstract Script` | `produceScript(Class<?> o)` Take the `Class` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(Edge o)` Take the `Edge` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(Enum<?> o)` Take the `Enum` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(List<?> o)` Take the `List` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(Map<?,?> o)` Take the `Map` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(P<?> p)` Take the `P` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(Set<?> o)` Take the `Set` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(String traversalSource, Bytecode o)` Take the `Bytecode` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(TraversalStrategyProxy<?> o)` Take the `TraversalStrategyProxy` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(Vertex o)` Take the `Vertex` and writes the syntax directly to the member `script` variable.
    `protected abstract Script` | `produceScript(VertexProperty<?> o)` Take the `VertexProperty` and writes the syntax directly to the member `script` variable.

    - ### 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

  - ### Constructor Detail

    - #### AbstractTypeTranslator

          protected AbstractTypeTranslator(boolean withParameters)

  - ### Method Detail

    - #### apply

          public Script apply(String traversalSource,
                              Object o)

      Specified by:
        `apply` in interface `BiFunction<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 a `null` value 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 the `Date` argument and convert it to a string representation in the target language.

    - #### getSyntax

          protected abstract String getSyntax(Timestamp o)

      Take the `Timestamp` argument and convert it to a string representation in the target language.

    - #### getSyntax

          protected abstract String getSyntax(UUID o)

      Take the `UUID` argument and convert it to a string representation in the target language.

    - #### getSyntax

          protected abstract String getSyntax(Lambda o)

      Take the `Lambda` argument and convert it to a string representation in the target language.

    - #### getSyntax

          protected abstract String getSyntax(SackFunctions.Barrier o)

      Take the `SackFunctions.Barrier` argument and convert it to a string representation in the target language.

    - #### getSyntax

          protected abstract String getSyntax(VertexProperty.Cardinality o)

      Take the `VertexProperty.Cardinality` argument and convert it to a string representation in the target language.

    - #### getSyntax

          protected abstract String getSyntax(TraversalOptionParent.Pick o)

      Take the `TraversalOptionParent.Pick` argument 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 the `Number` instance itself (i.e. `Double`, `Integer`, etc.)

    - #### produceScript

          protected abstract Script produceScript(Set<?> o)

      Take the `Set` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(List<?> o)

      Take the `List` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(Map<?,?> o)

      Take the `Map` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(Class<?> o)

      Take the `Class` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(Enum<?> o)

      Take the `Enum` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(Vertex o)

      Take the `Vertex` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(Edge o)

      Take the `Edge` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(VertexProperty<?> o)

      Take the `VertexProperty` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(TraversalStrategyProxy<?> o)

      Take the `TraversalStrategyProxy` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(String traversalSource,
                                                  Bytecode o)

      Take the `Bytecode` and writes the syntax directly to the member `script` variable.

    - #### produceScript

          protected abstract Script produceScript(P<?> p)

      Take the `P` and writes the syntax directly to the member `script` variable. This implementation should also consider `TextP`.

    - #### 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

Copyright © 2013–2022 Apache Software Foundation. All rights reserved.