All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.tinkerpop.gremlin.ogm.paths.bound.SingleBoundPath.kt Maven / Gradle / Ivy

There is a newer version: 0.21.0
Show newest version
package org.apache.tinkerpop.gremlin.ogm.paths.bound

import org.apache.tinkerpop.gremlin.ogm.elements.Vertex

/**
 * A [SingleBoundPath] is a [BoundPath] that is bound to only 1 'from' object.
 */
interface SingleBoundPath : BoundPath {

    /**
     * The object to start the [Path]'s traversal with
     */
    val from: FROM

    override val froms: Iterable get() = listOf(from)

    /**
     * A [SingleBoundPath] that results to 0 or more 'TO' objects for each 'FROM' object
     * the path is traversed with.
     */
    interface ToMany : SingleBoundPath, BoundPath.ToMany

    /**
     * A [SingleBoundPath] that results to exactly 1 'TO' objects for each 'FROM' object
     * the path is traversed with.
     */
    interface ToSingle : SingleBoundPath, BoundPath.ToSingle

    /**
     * A [SingleBoundPath] that results to 0 or 1 'TO' objects for each 'FROM' object
     * the path is traversed with.
     */
    interface ToOptional : SingleBoundPath, BoundPath.ToOptional
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy