flatgraph.schema

Members list

Type members

Classlikes

abstract class AbstractNodeType(val name: String, val comment: Option[String], val schemaInfo: SchemaInfo) extends HasClassName, HasProperties, HasSchemaInfo

Attributes

Supertypes
trait HasClassName
class Object
trait Matchable
class Any
Show all
Known subtypes
class NodeBaseType
class AnyNodeType
class NodeType
case class AdjacentNode(viaEdge: EdgeType, neighbor: AbstractNodeType, cardinality: Cardinality, customStepName: Option[String], customStepDoc: Option[String])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
class AnyNodeType extends NodeBaseType

root node trait for all nodes - use if you want to be explicitly unspecific

root node trait for all nodes - use if you want to be explicitly unspecific

Attributes

Supertypes
class NodeBaseType
trait HasClassName
class Object
trait Matchable
class Any
Show all
class Constant[A](val name: String, val value: String, val valueType: ValueType[A], val comment: Option[String], val schemaInfo: SchemaInfo) extends HasOptionalProtoId, HasSchemaInfo

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Constant

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Constant.type
case class ContainedNode(nodeType: AbstractNodeType, localName: String, cardinality: Cardinality, comment: Option[String])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object Direction extends Enumeration

Attributes

Supertypes
class Enumeration
trait Serializable
class Object
trait Matchable
class Any
Self type
Direction.type
class EdgeType(val name: String, val comment: Option[String], val schemaInfo: SchemaInfo) extends HasClassName, HasProperties, HasOptionalProtoId, HasSchemaInfo

Attributes

Companion
object
Supertypes
trait HasClassName
class Object
trait Matchable
class Any
Show all
object EdgeType

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
EdgeType.type
trait HasClassName

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class NodeBaseType
class AnyNodeType
class NodeType
class EdgeType
class Property[A]
Show all

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Constant[A]
class EdgeType
class NodeType
class Property[A]

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class NodeBaseType
class AnyNodeType
class NodeType
class Constant[A]
class EdgeType
class Property[A]
Show all
object Helpers

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Helpers.type
case class MarkerTrait(name: String)

An empty trait without any implementation, e.g. to mark a semantic relationship between certain types

An empty trait without any implementation, e.g. to mark a semantic relationship between certain types

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class NeighborInfoForEdge(edge: EdgeType, nodeInfos: Seq[NeighborInfoForNode], offsetPosition: Int)

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class NeighborInfoForNode(neighborNode: AbstractNodeType, edge: EdgeType, direction: Value, cardinality: Cardinality, isInherited: Boolean, customStepName: Option[String], customStepDoc: Option[String])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
class NodeBaseType(name: String, comment: Option[String], schemaInfo: SchemaInfo) extends AbstractNodeType

Attributes

Supertypes
trait HasClassName
class Object
trait Matchable
class Any
Show all
Known subtypes
class AnyNodeType
class NodeType(name: String, comment: Option[String], schemaInfo: SchemaInfo) extends AbstractNodeType, HasOptionalProtoId

Attributes

Supertypes
trait HasClassName
class Object
trait Matchable
class Any
Show all
case class ProductElement(name: String, accessorSrc: String, index: Int)

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
class Property[A](val name: String, val valueType: ValueType[A], val comment: Option[String], val schemaInfo: SchemaInfo) extends HasClassName, HasOptionalProtoId, HasSchemaInfo

Attributes

Companion
object
Supertypes
trait HasClassName
class Object
trait Matchable
class Any
Show all
object Property

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Property.type
case class ProtoOptions(pkg: String, javaOuterClassname: String, javaPackage: String, goPackage: String, csharpNamespace: String, uncommonProtoEnumNameMappings: Map[String, String])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
class Schema(val domainShortName: String, val basePackage: String, val additionalTraversalsPackages: Seq[String], val properties: Seq[Property[_]], val anyNode: AnyNodeType, val nodeBaseTypes: Seq[NodeBaseType], val nodeTypes: Seq[NodeType], val edgeTypes: Seq[EdgeType], val constantsByCategory: Map[String, Seq[Constant[_]]], val protoOptions: Option[ProtoOptions], val noWarnList: Set[(AbstractNodeType, Property[_])])

Value parameters

additionalTraversalsPackages:

additional packages that contain your traversals - used for .help to find @Doc annotations via reflection

basePackage:

specific for your domain, e.g. com.example.mydomain

Attributes

Supertypes
class Object
trait Matchable
class Any
class SchemaBuilder(domainShortName: String, basePackage: String, additionalTraversalsPackages: Seq[String])

Attributes

Supertypes
class Object
trait Matchable
class Any
case class SchemaInfo(definedIn: Option[Class[_]])

carry extra information on where a schema element is being defined, e.g. when we want to be able to refer back that node XYZ was defined in BaseSchema, e.g. for documentation

carry extra information on where a schema element is being defined, e.g. when we want to be able to refer back that node XYZ was defined in BaseSchema, e.g. for documentation

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object SchemaInfo

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
SchemaInfo.type