aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/control/security/capability.lux
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/lux/control/security/capability.lux7
1 files changed, 4 insertions, 3 deletions
diff --git a/stdlib/source/lux/control/security/capability.lux b/stdlib/source/lux/control/security/capability.lux
index a1272b018..2a4e5427b 100644
--- a/stdlib/source/lux/control/security/capability.lux
+++ b/stdlib/source/lux/control/security/capability.lux
@@ -21,7 +21,8 @@
[syntax (#+ syntax:)
[common
["." reader]
- ["." writer]]]]])
+ ["." writer]
+ ["|.|" export]]]]])
(abstract: #export (Capability brand input output)
(-> input output)
@@ -42,7 +43,7 @@
output))
((:representation capability) input))
- (syntax: #export (capability: {export reader.export}
+ (syntax: #export (capability: {export |export|.parser}
{declaration reader.declaration}
{annotations (<>.maybe reader.annotations)}
{[forge input output] (<c>.form ($_ <>.and <c>.local-identifier <c>.any <c>.any))})
@@ -52,7 +53,7 @@
g!brand (\ ! map (|>> %.code code.text)
(meta.gensym (format (%.name [this-module name]))))
#let [capability (` (..Capability (.primitive (~ g!brand)) (~ input) (~ output)))]]
- (wrap (list (` (type: (~+ (writer.export export))
+ (wrap (list (` (type: (~+ (|export|.write export))
(~ (writer.declaration declaration))
(~ capability)))
(` (def: (~ (code.local-identifier forge))