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 }; ```
9 lines
90 B
Plaintext
9 lines
90 B
Plaintext
module InductivePipes;
|
|
|
|
type T := t : T;
|
|
|
|
type T2 :=
|
|
| t1 : T2
|
|
| t2 : T2
|
|
| t3 : T2;
|