ru.primetalk.typed.ontology.metameta

Type members

Classlikes

final abstract class MetaSeq[+A <: OntologyType] extends OntologyType

Phantom type that represents a collection of elements of type A.

Phantom type that represents a collection of elements of type A.

final abstract class OntologyEnum[A] extends OntologyType
sealed trait OntologyType

Meta-meta package contains instruments to define meta level of ontology.

Meta-meta package contains instruments to define meta level of ontology.

For instance here we define type classes that allows us to use arbitrary types as property identifiers.

trait PropertyIdTypeClass[PropertyId[_, _ <: OntologyType]]
final abstract class Record[+A] extends OntologyType

Phantom type that represents a record.

Phantom type that represents a record.

trait RttiProvider[T]
Companion:
object
Companion:
class
Companion:
object
final abstract class Scalar[A] extends OntologyType

A type that represents a simple Scala type that is supported.

A type that represents a simple Scala type that is supported.

Givens

Givens

given metaSeqRtti[T <: OntologyType](using tprov: RttiProvider[T]): RttiProvider[MetaSeq[T]]
given scalarRtti[T](using tprov: RttiProvider[T]): RttiProvider[Scalar[T]]