diff options
Diffstat (limited to 'stdlib/source/lux/control/security/policy.lux')
-rw-r--r-- | stdlib/source/lux/control/security/policy.lux | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/stdlib/source/lux/control/security/policy.lux b/stdlib/source/lux/control/security/policy.lux index 25afafd5e..1d3c0e43e 100644 --- a/stdlib/source/lux/control/security/policy.lux +++ b/stdlib/source/lux/control/security/policy.lux @@ -5,20 +5,18 @@ [apply (#+ Apply)] [monad (#+ Monad)]] [type - abstract]] - [// - ["!" capability (#+ capability:)]]) + abstract]]) (abstract: #export (Policy brand value label) value - (capability: #export (Can_Upgrade brand label value) + (type: #export (Can_Upgrade brand label value) {#.doc (doc "Represents the capacity to 'upgrade' a value.")} - (can_upgrade value (Policy brand value label))) + (-> value (Policy brand value label))) - (capability: #export (Can_Downgrade brand label value) + (type: #export (Can_Downgrade brand label value) {#.doc (doc "Represents the capacity to 'downgrade' a value.")} - (can_downgrade (Policy brand value label) value)) + (-> (Policy brand value label) value)) (type: #export (Privilege brand label) {#.doc (doc "Represents the privilege to both 'upgrade' and 'downgrade' a value.")} @@ -27,8 +25,8 @@ (def: privilege Privilege - {#can_upgrade (..can_upgrade (|>> :abstraction)) - #can_downgrade (..can_downgrade (|>> :representation))}) + {#can_upgrade (|>> :abstraction) + #can_downgrade (|>> :representation)}) (type: #export (Delegation brand from to) {#.doc (doc "Represents the act of delegating policy capacities.")} @@ -41,7 +39,7 @@ (All [brand from to] (-> (Can_Downgrade brand from) (Can_Upgrade brand to) (Delegation brand from to))) - (|>> (!.use downgrade) (!.use upgrade))) + (|>> downgrade upgrade)) (type: #export (Context brand scope label) {#.doc (doc "A computational context with an associated policy privilege.")} |