org
.
opencypher
.
okapi
.
ir
.
impl
typer
package
typer
Linear Supertypes
AnyRef
,
Any
Ordering
Alphabetic
By Inheritance
Inherited
typer
AnyRef
Any
Hide All
Show All
Visibility
Public
All
Type Members
case class
AlreadyTypedExpr
(
it:
Expression
,
oldTyp:
CypherType
,
newTyp:
CypherType
)
extends
TyperError
with
Product
with
Serializable
type
HasSchema
[
A
]
=
Kleisli
[
Id
,
Schema
,
A
]
type
HasTracker
[
A
]
=
IndexedStateT
[
Eval
,
TypeTracker
,
TypeTracker
,
A
]
case class
InvalidArgument
(
expr:
Expression
,
argument:
Expression
)
extends
TyperError
with
Product
with
Serializable
case class
InvalidContainerAccess
(
it:
Expression
)
extends
TyperError
with
Product
with
Serializable
case class
InvalidType
(
it:
Expression
,
expected:
Seq
[
CypherType
]
,
actual:
CypherType
)
extends
TyperError
with
Product
with
Serializable
type
KeepsErrors
[
A
]
=
Validate
[
TyperError
,
A
]
type
LogsTypes
[
A
]
=
WriterT
[
Id
, (
Expression
,
CypherType
),
A
]
case class
NoSuitableSignatureForExpr
(
it:
Expression
,
argTypes:
Seq
[
CypherType
]
)
extends
TyperError
with
Product
with
Serializable
implicit final
class
RichTyperStack
[
A
]
extends
AnyVal
final
case class
SchemaTyper
(
schema:
Schema
)
extends
Product
with
Serializable
final
case class
TypeRecorder
(
recordedTypes:
List
[(
Ref
[
Expression
],
CypherType
)]
)
extends
Product
with
Serializable
case class
TypeTracker
(
maps:
List
[
Map
[
Expression
,
CypherType
]]
,
parameters:
Map
[
String
,
CypherType
] =
Map.empty
)
extends
Product
with
Serializable
sealed
trait
TyperError
extends
AnyRef
case class
TyperResult
[
A
]
(
value:
A
,
recorder:
TypeRecorder
,
tracker:
TypeTracker
)
extends
Product
with
Serializable
type
TyperStack
[
A
]
=
FxAppend
[
Fx1
[
HasSchema
],
Fx3
[
KeepsErrors
,
LogsTypes
,
HasTracker
]]
case class
UnTypedExpr
(
it:
Expression
)
extends
TyperError
with
Product
with
Serializable
case class
UnTypedParameter
(
it:
String
)
extends
TyperError
with
Product
with
Serializable
case class
UnsupportedExpr
(
expr:
Expression
)
extends
TyperError
with
Product
with
Serializable
case class
WrongNumberOfArguments
(
expr:
Expression
,
expected:
Int
,
actual:
Int
)
extends
TyperError
with
Product
with
Serializable
type
_hasSchema
[
R
]
=
MemberIn
[
HasSchema
,
R
]
type
_hasTracker
[
R
]
=
MemberIn
[
HasTracker
,
R
]
type
_keepsErrors
[
R
]
=
MemberIn
[
KeepsErrors
,
R
]
type
_logsTypes
[
R
]
=
MemberIn
[
LogsTypes
,
R
]
Value Members
object
InvalidType
extends
Serializable
object
SchemaTyper
extends
Serializable
object
TypeRecorder
extends
Serializable
object
TypeTracker
extends
Serializable
object
TypeTrackerScopeError
extends
TyperError
with
Product
with
Serializable
def
error
[
R
]
(
failure:
TyperError
)
(
implicit
arg0:
_keepsErrors
[
R
]
)
:
Eff
[
R
,
CypherType
]
package
exception
object
fromFrontendType
extends (
CypherType
) ⇒
CypherType
with
Product
with
Serializable
def
parameterType
[
R
]
(
it:
String
)
(
implicit
arg0:
_hasTracker
[
R
]
,
arg1:
_keepsErrors
[
R
]
)
:
Eff
[
R
,
CypherType
]
def
recordAndUpdate
[
R
]
(
entry: (
Expression
,
CypherType
)
)
(
implicit
arg0:
_hasTracker
[
R
]
,
arg1:
_logsTypes
[
R
]
)
:
Eff
[
R
,
CypherType
]
def
recordType
[
R
]
(
entry: (
Expression
,
CypherType
)
)
(
implicit
arg0:
_logsTypes
[
R
]
)
:
Eff
[
R
,
Unit
]
def
recordTypes
[
R
]
(
entries: (
Expression
,
CypherType
)*
)
(
implicit
arg0:
_logsTypes
[
R
]
)
:
Eff
[
R
,
Unit
]
implicit
val
showExpr
:
Show
[
Expression
]
object
toFrontendType
extends (
CypherType
) ⇒
CypherType
with
Product
with
Serializable
def
typeOf
[
R
]
(
it:
Expression
)
(
implicit
arg0:
_hasTracker
[
R
]
,
arg1:
_keepsErrors
[
R
]
)
:
Eff
[
R
,
CypherType
]
def
updateTyping
[
R
]
(
entry: (
Expression
,
CypherType
)
)
(
implicit
arg0:
_hasTracker
[
R
]
)
:
Eff
[
R
,
CypherType
]
Inherited from
AnyRef
Inherited from
Any
Ungrouped