Combinator information collected via reflection.
Combinator information for a runtime generated object.
Combinator information for a runtime generated object.
the runtime instance of the reflected object.
reflected type information of the instance
object.
a stack trace, indicating where the object was added to the repository.
a unique name tag, which will be part of the name of the resulting combinator.
Encapsulates an inhabitation result.
Encapsulates an inhabitation result.
the native scala type of the requested inhabitants.
a tree grammar rule representation of all inhabitants.
the inhabitation request target type.
an interpreter to turn inhabitants into scala objects.
Builds a taxonomy out of native Scala types using reflection.
Builds a taxonomy out of native Scala types using reflection.
If we add A and B, we have B in taxonomy(A) iff A <: B
.
Used by ReflectedRepository to automatically add subtype information, so you probably don't ever
have to use this.
A Bounded Combinatory Logic repository constructed from Scala code via reflection.
A Bounded Combinatory Logic repository constructed from Scala code via reflection.
Use [ReflectedRepository.apply] of the companion object to obtain a new instance.
the Scala type of the repository.
Combinator information collected for a compile time static singleton object.
Combinator information collected for a compile time static singleton object.
the full type signature of the reflected object (for debugging information).
Marker annotation to find combinators via reflection.
Helper object to construct a ReflectedRepository.
Combinator information collected via reflection. Used to turn scala objects into combinators for BoundedCombinatoryLogic and to interpret inhabitatoin results back into call of their apply methods.