Interface Named

All Superinterfaces:
IdentifiableElement
All Known Subinterfaces:
Node, PropertyContainer, Relationship
All Known Implementing Classes:
NamedPath, NodeBase, RelationshipBase

@API(status=STABLE, since="1.0") public non-sealed interface Named extends IdentifiableElement
A named thing exposes getSymbolicName(), making the thing identifiable.
Since:
1.0
Author:
Michael J. Simons
  • Method Details

    • getSymbolicName

      @NotNull @Contract(pure=true) @NotNull Optional<SymbolicName> getSymbolicName()
      Returns:
      An optional symbolic name.
    • getRequiredSymbolicName

      @NotNull @Contract(pure=true) default @NotNull SymbolicName getRequiredSymbolicName()
      Returns:
      A symbolic name
      Throws:
      IllegalStateException - If this has not been named yet.
    • asExpression

      @NotNull default @NotNull Expression asExpression()
      Description copied from interface: IdentifiableElement
      Transform this element into an expression
      Specified by:
      asExpression in interface IdentifiableElement
      Returns:
      this element as an expression. Will return the same instance if it is already an expression.