diff options
author | Eduardo Julian | 2021-07-20 16:19:43 -0400 |
---|---|---|
committer | Eduardo Julian | 2021-07-20 16:19:43 -0400 |
commit | 461a6ce673de9b2c3d77714c4884c2a316fe7e8f (patch) | |
tree | 9522fbf422dea7935ca167f425c8bacce0f76b63 /stdlib/source/library/lux/target/jvm/type/alias.lux | |
parent | a1c192d175f13cdb3e69b3ca5985d0d5ecf0fe93 (diff) |
Updated the Scriptum documentation generator.
Diffstat (limited to 'stdlib/source/library/lux/target/jvm/type/alias.lux')
-rw-r--r-- | stdlib/source/library/lux/target/jvm/type/alias.lux | 41 |
1 files changed, 26 insertions, 15 deletions
diff --git a/stdlib/source/library/lux/target/jvm/type/alias.lux b/stdlib/source/library/lux/target/jvm/type/alias.lux index d52051f04..594a75562 100644 --- a/stdlib/source/library/lux/target/jvm/type/alias.lux +++ b/stdlib/source/library/lux/target/jvm/type/alias.lux @@ -103,18 +103,29 @@ (|> (..class (..parameter aliasing)) (<>.after (<text>.this //signature.exception_prefix)))) -(def: #export (method aliasing type) - (-> Aliasing (Type Method) (Type Method)) - (|> type - //.signature - //signature.signature - (<text>.run (do <>.monad - [type_variables (|> (<>.some (..var aliasing)) - (<>.after (<text>.this //signature.parameters_start)) - (<>.before (<text>.this //signature.parameters_end)) - (<>.default (list))) - inputs (..inputs aliasing) - return (..return aliasing) - exceptions (<>.some (..exception aliasing))] - (wrap (//.method [type_variables inputs return exceptions])))) - try.assume)) +(def: (bound aliasing) + (-> Aliasing (Parser (Type Class))) + (do <>.monad + [_ (<text>.this ":")] + (..class (..parameter aliasing)))) + +(def: (bound_type_var aliasing) + (-> Aliasing (Parser (Type Var))) + (|> //parser.var_name + (\ <>.monad map //.var) + (<>.before (<>.many (..bound aliasing))))) + +(def: #export (method aliasing) + (-> Aliasing (-> (Type Method) (Type Method))) + (|>> //.signature + //signature.signature + (<text>.run (do <>.monad + [type_variables (|> (<>.some (..bound_type_var aliasing)) + (<>.after (<text>.this //signature.parameters_start)) + (<>.before (<text>.this //signature.parameters_end)) + (<>.default (list))) + inputs (..inputs aliasing) + return (..return aliasing) + exceptions (<>.some (..exception aliasing))] + (wrap (//.method [type_variables inputs return exceptions])))) + try.assume)) |