package lambdabuffers.compiler

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message Error

compiler.proto:272

Compiler Error

Used in: Output

message Input

compiler.proto:12

Compiler Input Compiler Input is a fully self contained list of modules, the entire compilation closure needed by the Compiler to perform its task.

message InternalError

compiler.proto:20

Errors internal to the implementation.

Used in: Error

message KindCheckError

compiler.proto:126

Kind checking errors.

Used in: Error

message KindCheckError.CyclicKindError

compiler.proto:168

A cyclic kind was encountered. Infinite kinds like this are not acceptable, and we do not support them. We could not construct infinite kind in ty_def. As the implementation currently stands such an error is (most likely) not representable - therefore not reachable. Such an error would usually occur for a term like: λa. a a - in which case the inference would try to unify two kinds of the form: m and m -> n - because m appears in both terms - the cyclic unification error would be thrown. In the case of LambdaBuffers - such an error is not (currently) achievable as the kind of the variable is given by the context - (i.e. λa : m . a a, where m is a kind) therefore the unification would fail with Unification Error. Nevertheless - future features might require it.

Used in: KindCheckError

message KindCheckError.InconsistentTypeError

compiler.proto:174

The actual_kind differs from the expected_kind.

Used in: KindCheckError

message KindCheckError.UnboundTyRefError

compiler.proto:136

Unbound type reference ty_ref detected in term ty_def.

Used in: KindCheckError

message KindCheckError.UnboundTyVarError

compiler.proto:129

Unbound variable ty_var detected in term ty_def.

Used in: KindCheckError

message KindCheckError.UnificationError

compiler.proto:148

In ty_def an error has occurred when trying to unify kind ty_kind_lhs with ty_kind_rhs. FIXME(cstml): Add source of constraint to the error such that user can see where the constraint was generated - therefore where the error precisely is.

Used in: KindCheckError

message NamingError

compiler.proto:192

Naming error message

Used in: Error

message Output

compiler.proto:290

Output of the Compiler.

message ProtoParseError

compiler.proto:34

All errors that occur because of Google Protocol Buffer's inability to enforce certain invariants. Some of invariance: - using Proto `map` restricts users to `string` keys which impacts API documentation, which is why `repeated` fields are used throughout, - using Proto 'oneof' means users have to check if such a field is set or report an error otherwise.

Used in: Error

message ProtoParseError.MultipleClassDefError

compiler.proto:50

Multiple ClassDefs with the same ClassName were found in ModuleName.

Used in: ProtoParseError

message ProtoParseError.MultipleConstructorError

compiler.proto:69

Multiple Sum Constructors with the same ConstrName were found in ModuleName.TyDef.

Used in: ProtoParseError

message ProtoParseError.MultipleFieldError

compiler.proto:80

Multiple Record Fields with the same FieldName were found in ModuleName.TyDef.

Used in: ProtoParseError

message ProtoParseError.MultipleImportError

compiler.proto:89

Used in: ProtoParseError

message ProtoParseError.MultipleModuleError

compiler.proto:36

Multiple Modules with the same ModuleName were found.

Used in: ProtoParseError

message ProtoParseError.MultipleTyArgError

compiler.proto:58

Multiple TyArgs with the same ArgName were found in ModuleName.TyDef.

Used in: ProtoParseError

message ProtoParseError.MultipleTyDefError

compiler.proto:42

Multiple TyDefs with the same TyName were found in ModuleName.

Used in: ProtoParseError

message ProtoParseError.OneOfNotSetError

compiler.proto:97

Proto `oneof` field is not set.

Used in: ProtoParseError

message ProtoParseError.UnknownEnumError

compiler.proto:105

Proto `enum` field is unknown.

Used in: ProtoParseError

message Result

compiler.proto:286

Compiler Result ~ a successful Compilation Output.

Used in: Output

(message has no fields)

message TyClassCheckError

compiler.proto:205

Type class checking errors.

Used in: Error

message TyClassCheckError.DeriveOpaqueError

compiler.proto:230

In `module_name` it wasn't possible to solve `constraint` because a `sub_constraint` has been derived on an `Opaque` type. `Opaque` type can only have an `InstanceClause` declared for them.

Used in: TyClassCheckError

message TyClassCheckError.ImportNotFoundError

compiler.proto:222

Import `missing` wasn't found in `module_name`

Used in: TyClassCheckError

message TyClassCheckError.MissingRuleError

compiler.proto:238

In `module_name` while trying to solve `constraint` it wasn't possible to find a rule (`Derive` or `InstanceClause`) for `sub_constraint`.

Used in: TyClassCheckError

message TyClassCheckError.OverlappingRulesError

compiler.proto:247

In `module_name` while trying to solve `constraint` `overlaps` (`Derive` or `InstanceClause`) were found that could be used to solve the `sub_constraint`.

Used in: TyClassCheckError

message TyClassCheckError.OverlappingRulesError.QHead

compiler.proto:253

NOTE(bladyjoker): This should rather be oneof `Derive` and `InstanceClause`.

Used in: OverlappingRulesError

message TyClassCheckError.SuperclassCycleError

compiler.proto:215

Superclass cycle `cycled_class_refs` was detected when checking a class definition for `class_name` in module `module_name`.

Used in: TyClassCheckError

message TyClassCheckError.UnboundClassRefError

compiler.proto:208

Unbound `class_ref` detected in `module_name`.

Used in: TyClassCheckError