mirror of
https://github.com/anoma/juvix.git
synced 2024-12-15 01:52:11 +03:00
36b390fcb0
- Closes #2331. The rules implemented in this pr are as follows. 1. If a type definition has only one constructor, no pipe is added. The constructor is printed in the same line if it fits. 2. If a constructor is a record with a single field, the field is printed in the same line if it fits. If the constructor has multiple fields, they are printed aligned and indented after a line break. Examples: ``` type T := constructT : T; type T-wrapper := mkWrapper {unwrap : T}; type EnumRecord := | --- doc for C1 C1 { c1a : T; c1b : T } | C2 { c2a : T; c2b : T }; ```
10 lines
238 B
Plaintext
10 lines
238 B
Plaintext
module MultiParams;
|
|
|
|
type Multi (A B C : Type) := mult : Multi A B C;
|
|
|
|
f : {A B : Type} → (C : Type) → {D E F : Type} → Type → Type
|
|
| C _ := C;
|
|
|
|
g : {A B : Type} → (C : Type) → {D _ F : Type} → Type → Type
|
|
| C _ := C;
|