From df7321119283f4edd00e159ba619696f1c07161a Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Thu, 16 Sep 2021 02:16:58 -0400 Subject: Additional documentation for JVM types. --- .../documentation/lux/control/parser/binary.lux | 2 +- .../documentation/lux/control/parser/code.lux | 8 +-- .../documentation/lux/data/format/binary.lux | 4 +- .../source/documentation/lux/data/text/format.lux | 4 +- stdlib/source/documentation/lux/macro.lux | 4 +- stdlib/source/documentation/lux/macro/code.lux | 2 +- stdlib/source/documentation/lux/macro/template.lux | 2 +- stdlib/source/documentation/lux/target/jvm.lux | 24 ++++---- .../source/documentation/lux/target/jvm/type.lux | 64 ++++++++++++++++++++++ .../documentation/lux/target/jvm/type/alias.lux | 20 +++++++ .../documentation/lux/target/jvm/type/box.lux | 25 +++++++++ .../documentation/lux/target/jvm/type/category.lux | 30 ++++++++++ .../lux/target/jvm/type/descriptor.lux | 42 ++++++++++++++ .../documentation/lux/target/jvm/type/lux.lux | 28 ++++++++++ .../documentation/lux/target/jvm/type/parser.lux | 53 ++++++++++++++++++ .../lux/target/jvm/type/reflection.lux | 37 +++++++++++++ .../lux/target/jvm/type/signature.lux | 48 ++++++++++++++++ stdlib/source/documentation/lux/type/unit.lux | 4 +- .../library/lux/target/jvm/type/category.lux | 6 +- 19 files changed, 377 insertions(+), 30 deletions(-) create mode 100644 stdlib/source/documentation/lux/target/jvm/type.lux create mode 100644 stdlib/source/documentation/lux/target/jvm/type/alias.lux create mode 100644 stdlib/source/documentation/lux/target/jvm/type/box.lux create mode 100644 stdlib/source/documentation/lux/target/jvm/type/category.lux create mode 100644 stdlib/source/documentation/lux/target/jvm/type/descriptor.lux create mode 100644 stdlib/source/documentation/lux/target/jvm/type/lux.lux create mode 100644 stdlib/source/documentation/lux/target/jvm/type/parser.lux create mode 100644 stdlib/source/documentation/lux/target/jvm/type/reflection.lux create mode 100644 stdlib/source/documentation/lux/target/jvm/type/signature.lux (limited to 'stdlib/source') diff --git a/stdlib/source/documentation/lux/control/parser/binary.lux b/stdlib/source/documentation/lux/control/parser/binary.lux index 5a83d0440..798ac286c 100644 --- a/stdlib/source/documentation/lux/control/parser/binary.lux +++ b/stdlib/source/documentation/lux/control/parser/binary.lux @@ -132,7 +132,7 @@ ($.default /.text) ($.default /.maybe) ($.default /.set_elements_are_not_unique) - ($.default /.name) + ($.default /.symbol) ($.default /.type) ($.default /.location) ($.default /.code)] diff --git a/stdlib/source/documentation/lux/control/parser/code.lux b/stdlib/source/documentation/lux/control/parser/code.lux index 6e0871285..c2a4cf27f 100644 --- a/stdlib/source/documentation/lux/control/parser/code.lux +++ b/stdlib/source/documentation/lux/control/parser/code.lux @@ -1,6 +1,6 @@ (.using [library - [lux {"-" nat int rev local not} + [lux {"-" nat int rev local not symbol} ["$" documentation {"+" documentation:}] [data [text {"+" \n} @@ -49,12 +49,10 @@ (format "Parses the contents of a " (~~ (template.text [])) ".")))] [/.form] + [/.variant] [/.tuple] ) -(documentation: /.record - "Parses the contents of a record.") - (documentation: /.end! "Verifies there are no more inputs.") @@ -106,7 +104,7 @@ ..form ..tuple - ..record + ..variant ..end! ..end? ..result diff --git a/stdlib/source/documentation/lux/data/format/binary.lux b/stdlib/source/documentation/lux/data/format/binary.lux index 854b2416e..4eb84ccd1 100644 --- a/stdlib/source/documentation/lux/data/format/binary.lux +++ b/stdlib/source/documentation/lux/data/format/binary.lux @@ -1,6 +1,6 @@ (.using [library - [lux {"-" nat int rev list type or and} + [lux {"-" nat int rev list type or and symbol} ["$" documentation {"+" documentation:}] [data [text {"+" \n} @@ -86,7 +86,7 @@ ($.default /.maybe) ($.default /.list) ($.default /.set) - ($.default /.name) + ($.default /.symbol) ($.default /.type) ($.default /.location) ($.default /.code)] diff --git a/stdlib/source/documentation/lux/data/text/format.lux b/stdlib/source/documentation/lux/data/text/format.lux index fe36d6f66..3ef040ea8 100644 --- a/stdlib/source/documentation/lux/data/text/format.lux +++ b/stdlib/source/documentation/lux/data/text/format.lux @@ -1,6 +1,6 @@ (.using [library - [lux {"-" nat int rev type list} + [lux {"-" nat int rev type list symbol} ["$" documentation {"+" documentation:}] [macro ["[0]" template]]]] @@ -30,7 +30,7 @@ ($.default /.text) ($.default /.ratio) - ($.default /.name) + ($.default /.symbol) ($.default /.location) ($.default /.code) ($.default /.type) diff --git a/stdlib/source/documentation/lux/macro.lux b/stdlib/source/documentation/lux/macro.lux index 15332cfc1..02e0f77f8 100644 --- a/stdlib/source/documentation/lux/macro.lux +++ b/stdlib/source/documentation/lux/macro.lux @@ -1,6 +1,6 @@ (.using [library - [lux {"-" char} + [lux {"-" char symbol} ["$" documentation {"+" documentation:}] [data [text {"+" \n} @@ -30,7 +30,7 @@ [(full_expansion syntax)]) (documentation: /.symbol - (format "Generates a unique name as an Code node (ready to be used in code templates)." + (format "Generates a unique name as a Code node (ready to be used in code templates)." \n "A prefix can be given (or just be empty text) to better identify the code for debugging purposes.") [(symbol prefix)]) diff --git a/stdlib/source/documentation/lux/macro/code.lux b/stdlib/source/documentation/lux/macro/code.lux index 75ef05f4e..ed5ebdc2b 100644 --- a/stdlib/source/documentation/lux/macro/code.lux +++ b/stdlib/source/documentation/lux/macro/code.lux @@ -31,8 +31,8 @@ ($.default /.text) ($.default /.symbol) ($.default /.form) + ($.default /.variant) ($.default /.tuple) - ($.default /.record) ($.default /.equivalence) ($.default /.format)] diff --git a/stdlib/source/documentation/lux/macro/template.lux b/stdlib/source/documentation/lux/macro/template.lux index 776786ca2..495832bdf 100644 --- a/stdlib/source/documentation/lux/macro/template.lux +++ b/stdlib/source/documentation/lux/macro/template.lux @@ -1,6 +1,6 @@ (.using [library - [lux {"-" let} + [lux {"-" let symbol} ["$" documentation {"+" documentation:}] [data [text {"+" \n} diff --git a/stdlib/source/documentation/lux/target/jvm.lux b/stdlib/source/documentation/lux/target/jvm.lux index 7157db528..fe6cc7ab6 100644 --- a/stdlib/source/documentation/lux/target/jvm.lux +++ b/stdlib/source/documentation/lux/target/jvm.lux @@ -1,14 +1,16 @@ (.using - [library - [lux {"-" char} - ["$" documentation {"+" documentation:}] - [data - [text {"+" \n} - ["%" format {"+" format}]] - [collection - ["[0]" list]]]]] - [\\library - ["[0]" /]]) + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]] + ["[0]" / "_" + ["[1][0]" type]]) (.def: .public documentation (.List $.Module) @@ -44,4 +46,4 @@ ($.default /.Control) ($.default /.Instruction) ($.default /.Bytecode)] - [])) + [/type.documentation])) diff --git a/stdlib/source/documentation/lux/target/jvm/type.lux b/stdlib/source/documentation/lux/target/jvm/type.lux new file mode 100644 index 000000000..e4e3f042c --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type.lux @@ -0,0 +1,64 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]] + ["[0]" / "_" + ["[1][0]" alias] + ["[1][0]" box] + ["[1][0]" category] + ["[1][0]" descriptor] + ["[1][0]" lux] + ["[1][0]" parser] + ["[1][0]" reflection] + ["[1][0]" signature]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.Type) + ($.default /.Argument) + ($.default /.Typed) + ($.default /.Constraint) + ($.default /.signature) + ($.default /.descriptor) + ($.default /.reflection) + ($.default /.void) + ($.default /.boolean) + ($.default /.byte) + ($.default /.short) + ($.default /.int) + ($.default /.long) + ($.default /.float) + ($.default /.double) + ($.default /.char) + ($.default /.array) + ($.default /.class) + ($.default /.declaration) + ($.default /.as_class) + ($.default /.wildcard) + ($.default /.var) + ($.default /.lower) + ($.default /.upper) + ($.default /.method) + ($.default /.equivalence) + ($.default /.hash) + ($.default /.primitive?) + ($.default /.void?) + ($.default /.class?) + ($.default /.format)] + [/alias.documentation + /box.documentation + /category.documentation + /descriptor.documentation + /lux.documentation + /parser.documentation + /reflection.documentation + /signature.documentation])) diff --git a/stdlib/source/documentation/lux/target/jvm/type/alias.lux b/stdlib/source/documentation/lux/target/jvm/type/alias.lux new file mode 100644 index 000000000..72ace63a0 --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type/alias.lux @@ -0,0 +1,20 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.Aliasing) + ($.default /.fresh) + ($.default /.method)] + [])) diff --git a/stdlib/source/documentation/lux/target/jvm/type/box.lux b/stdlib/source/documentation/lux/target/jvm/type/box.lux new file mode 100644 index 000000000..ef7426ec7 --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type/box.lux @@ -0,0 +1,25 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.boolean) + ($.default /.byte) + ($.default /.short) + ($.default /.int) + ($.default /.long) + ($.default /.float) + ($.default /.double) + ($.default /.char)] + [])) diff --git a/stdlib/source/documentation/lux/target/jvm/type/category.lux b/stdlib/source/documentation/lux/target/jvm/type/category.lux new file mode 100644 index 000000000..370ba21b3 --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type/category.lux @@ -0,0 +1,30 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.Method) + ($.default /.Return') + ($.default /.Value') + ($.default /.Return) + ($.default /.Value) + ($.default /.Void) + ($.default /.Object) + ($.default /.Parameter) + ($.default /.Primitive) + ($.default /.Var) + ($.default /.Class) + ($.default /.Array) + ($.default /.Declaration)] + [])) diff --git a/stdlib/source/documentation/lux/target/jvm/type/descriptor.lux b/stdlib/source/documentation/lux/target/jvm/type/descriptor.lux new file mode 100644 index 000000000..51dd8be76 --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type/descriptor.lux @@ -0,0 +1,42 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.Descriptor) + ($.default /.descriptor) + ($.default /.void) + ($.default /.boolean) + ($.default /.byte) + ($.default /.short) + ($.default /.int) + ($.default /.long) + ($.default /.float) + ($.default /.double) + ($.default /.char) + ($.default /.class_prefix) + ($.default /.class_suffix) + ($.default /.class) + ($.default /.declaration) + ($.default /.as_class) + ($.default /.var) + ($.default /.wildcard) + ($.default /.lower) + ($.default /.upper) + ($.default /.array_prefix) + ($.default /.array) + ($.default /.method) + ($.default /.equivalence) + ($.default /.class_name)] + [])) diff --git a/stdlib/source/documentation/lux/target/jvm/type/lux.lux b/stdlib/source/documentation/lux/target/jvm/type/lux.lux new file mode 100644 index 000000000..d0a9120fc --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type/lux.lux @@ -0,0 +1,28 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.Lower) + ($.default /.Upper) + ($.default /.Mapping) + ($.default /.fresh) + ($.default /.unknown_var) + ($.default /.class) + ($.default /.type) + ($.default /.boxed_type) + ($.default /.return) + ($.default /.boxed_return) + ($.default /.check)] + [])) diff --git a/stdlib/source/documentation/lux/target/jvm/type/parser.lux b/stdlib/source/documentation/lux/target/jvm/type/parser.lux new file mode 100644 index 000000000..dd04f9b9c --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type/parser.lux @@ -0,0 +1,53 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.void) + ($.default /.boolean) + ($.default /.byte) + ($.default /.short) + ($.default /.int) + ($.default /.long) + ($.default /.float) + ($.default /.double) + ($.default /.char) + ($.default /.wildcard) + ($.default /.primitive) + ($.default /.class_name) + ($.default /.var_name) + ($.default /.var') + ($.default /.var) + ($.default /.var?) + ($.default /.name) + ($.default /.parameter) + ($.default /.array') + ($.default /.class) + ($.default /.lower?) + ($.default /.upper?) + ($.default /.read_class) + ($.default /.value) + ($.default /.array) + ($.default /.object) + ($.default /.return) + ($.default /.method) + ($.default /.array?) + ($.default /.class?) + ($.default /.primitive?) + ($.default /.wildcard?) + ($.default /.parameter?) + ($.default /.object?) + ($.default /.declaration') + ($.default /.declaration)] + [])) diff --git a/stdlib/source/documentation/lux/target/jvm/type/reflection.lux b/stdlib/source/documentation/lux/target/jvm/type/reflection.lux new file mode 100644 index 000000000..b386fa4ff --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type/reflection.lux @@ -0,0 +1,37 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.Reflection) + ($.default /.reflection) + ($.default /.equivalence) + ($.default /.void) + ($.default /.boolean) + ($.default /.byte) + ($.default /.short) + ($.default /.int) + ($.default /.long) + ($.default /.float) + ($.default /.double) + ($.default /.char) + ($.default /.class) + ($.default /.declaration) + ($.default /.as_class) + ($.default /.array) + ($.default /.var) + ($.default /.wildcard) + ($.default /.lower) + ($.default /.upper)] + [])) diff --git a/stdlib/source/documentation/lux/target/jvm/type/signature.lux b/stdlib/source/documentation/lux/target/jvm/type/signature.lux new file mode 100644 index 000000000..ff3df3280 --- /dev/null +++ b/stdlib/source/documentation/lux/target/jvm/type/signature.lux @@ -0,0 +1,48 @@ +(.using + [library + [lux {"-" char} + ["$" documentation {"+" documentation:}] + [data + [text {"+" \n} + ["%" format {"+" format}]] + [collection + ["[0]" list]]]]] + [\\library + ["[0]" /]]) + +(.def: .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.Signature) + ($.default /.signature) + ($.default /.void) + ($.default /.boolean) + ($.default /.byte) + ($.default /.short) + ($.default /.int) + ($.default /.long) + ($.default /.float) + ($.default /.double) + ($.default /.char) + ($.default /.array) + ($.default /.wildcard) + ($.default /.var_prefix) + ($.default /.var) + ($.default /.var_name) + ($.default /.lower_prefix) + ($.default /.upper_prefix) + ($.default /.lower) + ($.default /.upper) + ($.default /.parameters_start) + ($.default /.parameters_end) + ($.default /.class) + ($.default /.declaration) + ($.default /.as_class) + ($.default /.arguments_start) + ($.default /.arguments_end) + ($.default /.exception_prefix) + ($.default /.method) + ($.default /.equivalence) + ($.default /.hash)] + [])) diff --git a/stdlib/source/documentation/lux/type/unit.lux b/stdlib/source/documentation/lux/type/unit.lux index 9d0947bf5..417d9cbcb 100644 --- a/stdlib/source/documentation/lux/type/unit.lux +++ b/stdlib/source/documentation/lux/type/unit.lux @@ -44,8 +44,8 @@ (template [ ] [(`` (documentation: - (let [numerator (value@ [/.#ratio ratio.#numerator] ) - denominator (value@ [/.#ratio ratio.#denominator] )] + (let [numerator (value@ [/.ratio ratio.#numerator] ) + denominator (value@ [/.ratio ratio.#denominator] )] (format "The '" (~~ (template.text [])) "' scale, from " (%.nat numerator) " to " (%.nat denominator) "."))))] [/.Kilo /.kilo] diff --git a/stdlib/source/library/lux/target/jvm/type/category.lux b/stdlib/source/library/lux/target/jvm/type/category.lux index 1154c7c13..660ec9962 100644 --- a/stdlib/source/library/lux/target/jvm/type/category.lux +++ b/stdlib/source/library/lux/target/jvm/type/category.lux @@ -6,7 +6,7 @@ [type abstract]]]) -(abstract: .public Void' Any) +(abstract: Void' Any) (abstract: .public (Value' kind) Any) (abstract: .public (Return' kind) Any) (abstract: .public Method Any) @@ -15,10 +15,10 @@ (type: .public Value (<| Return' Value' Any)) (type: .public Void (<| Return' Void')) -(abstract: .public (Object' brand) Any) +(abstract: (Object' brand) Any) (type: .public Object (<| Return' Value' Object' Any)) -(abstract: .public (Parameter' brand) Any) +(abstract: (Parameter' brand) Any) (type: .public Parameter (<| Return' Value' Object' Parameter' Any)) (template [ ] -- cgit v1.2.3