aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/macro/syntax/common/reader.lux
blob: cd7ca1dcef94c455e85ebdf38fd040b8a209fdd7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
(.module: {#.doc "Commons syntax readers."}
  [lux #*
   [abstract
    monad]
   [control
    ["p" parser ("#\." monad)
     ["s" code (#+ Parser)]]]
   [data
    ["." name ("#\." equivalence)]
    ["." product]
    ["." maybe]
    [collection
     ["." list]]]
   ["." meta]]
  ["." //])

(def: #export typed_input
  {#.doc "Reader for the common typed-argument syntax used by many macros."}
  (Parser //.Typed_Input)
  (s.record (p.and s.any s.any)))