aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux/ffi.rb.lux
diff options
context:
space:
mode:
authorEduardo Julian2021-07-27 03:51:10 -0400
committerEduardo Julian2021-07-27 03:51:10 -0400
commit061fd8a209bbcaffc2bfb850ac6046752a567d50 (patch)
tree8cd83ad7d0bc06ded7976eb5420467e485733ae8 /stdlib/source/library/lux/ffi.rb.lux
parente64b6d0114c26a455e19a416b5f02a4d19dd711f (diff)
Re-named wrap => in && unwrap => out.
Diffstat (limited to 'stdlib/source/library/lux/ffi.rb.lux')
-rw-r--r--stdlib/source/library/lux/ffi.rb.lux126
1 files changed, 63 insertions, 63 deletions
diff --git a/stdlib/source/library/lux/ffi.rb.lux b/stdlib/source/library/lux/ffi.rb.lux
index f3f483e23..ba63ac1b1 100644
--- a/stdlib/source/library/lux/ffi.rb.lux
+++ b/stdlib/source/library/lux/ffi.rb.lux
@@ -80,7 +80,7 @@
(def: constant
(Parser Field)
(<code>.form ($_ <>.and
- (<>\wrap true)
+ (<>\in true)
<code>.local_identifier
(<>.maybe ..alias)
..nilable)))
@@ -245,60 +245,60 @@
#.None
(list)))
class_import (` ("ruby constant" (~ (code.text class))))]
- (wrap (list& (` (type: (~ g!type)
- (..Object (primitive (~ (code.text class))))))
- (list\map (function (_ member)
- (case member
- (#Field [static? field alias fieldT])
- (if static?
- (` ((~! syntax:) ((~ (qualify (maybe.default field alias))))
- (\ (~! meta.monad) (~' wrap)
- (list (` (.:as (~ (nilable_type fieldT))
- (.exec
- (~+ module_import)
- ("ruby constant" (~ (code.text (%.format class "::" field)))))))))))
- (` (def: ((~ (qualify field))
+ (in (list& (` (type: (~ g!type)
+ (..Object (primitive (~ (code.text class))))))
+ (list\map (function (_ member)
+ (case member
+ (#Field [static? field alias fieldT])
+ (if static?
+ (` ((~! syntax:) ((~ (qualify (maybe.default field alias))))
+ (\ (~! meta.monad) (~' in)
+ (list (` (.:as (~ (nilable_type fieldT))
+ (.exec
+ (~+ module_import)
+ ("ruby constant" (~ (code.text (%.format class "::" field)))))))))))
+ (` (def: ((~ (qualify field))
+ (~ g!object))
+ (-> (~ g!type)
+ (~ (nilable_type fieldT)))
+ (:assume
+ (~ (without_nil g!temp fieldT (` ("ruby object get" (~ (code.text field))
+ (:as (..Object .Any) (~ g!object))))))))))
+
+ (#Method method)
+ (case method
+ (#Static [method alias inputsT io? try? outputT])
+ (..make_function (qualify (maybe.default method alias))
+ g!temp
+ (` ("ruby object get" (~ (code.text method))
+ (:as (..Object .Any)
+ (.exec
+ (~+ module_import)
+ ("ruby constant" (~ (code.text (%.format class "::" method))))))))
+ inputsT
+ io?
+ try?
+ outputT)
+
+ (#Virtual [method alias inputsT io? try? outputT])
+ (let [g!inputs (input_variables inputsT)]
+ (` (def: ((~ (qualify (maybe.default method alias)))
+ [(~+ (list\map product.right g!inputs))]
(~ g!object))
- (-> (~ g!type)
- (~ (nilable_type fieldT)))
+ (-> [(~+ (list\map nilable_type inputsT))]
+ (~ g!type)
+ (~ (|> (nilable_type outputT)
+ (try_type try?)
+ (io_type io?))))
(:assume
- (~ (without_nil g!temp fieldT (` ("ruby object get" (~ (code.text field))
- (:as (..Object .Any) (~ g!object))))))))))
-
- (#Method method)
- (case method
- (#Static [method alias inputsT io? try? outputT])
- (..make_function (qualify (maybe.default method alias))
- g!temp
- (` ("ruby object get" (~ (code.text method))
- (:as (..Object .Any)
- (.exec
- (~+ module_import)
- ("ruby constant" (~ (code.text (%.format class "::" method))))))))
- inputsT
- io?
- try?
- outputT)
-
- (#Virtual [method alias inputsT io? try? outputT])
- (let [g!inputs (input_variables inputsT)]
- (` (def: ((~ (qualify (maybe.default method alias)))
- [(~+ (list\map product.right g!inputs))]
- (~ g!object))
- (-> [(~+ (list\map nilable_type inputsT))]
- (~ g!type)
- (~ (|> (nilable_type outputT)
- (try_type try?)
- (io_type io?))))
- (:assume
- (~ (<| (with_io io?)
- (with_try try?)
- (without_nil g!temp outputT)
- (` ("ruby object do"
- (~ (code.text method))
- (~ g!object)
- (~+ (list\map (with_nil g!temp) g!inputs)))))))))))))
- members)))))
+ (~ (<| (with_io io?)
+ (with_try try?)
+ (without_nil g!temp outputT)
+ (` ("ruby object do"
+ (~ (code.text method))
+ (~ g!object)
+ (~+ (list\map (with_nil g!temp) g!inputs)))))))))))))
+ members)))))
(#Function [name alias inputsT io? try? outputT])
(let [imported (` (.exec
@@ -309,13 +309,13 @@
#.None
(list)))
("ruby constant" (~ (code.text name)))))]
- (wrap (list (..make_function (code.local_identifier (maybe.default name alias))
- g!temp
- imported
- inputsT
- io?
- try?
- outputT))))
+ (in (list (..make_function (code.local_identifier (maybe.default name alias))
+ g!temp
+ imported
+ inputsT
+ io?
+ try?
+ outputT))))
(#Constant [_ name alias fieldT])
(let [imported (` (.exec
@@ -326,7 +326,7 @@
#.None
(list)))
("ruby constant" (~ (code.text name)))))]
- (wrap (list (` ((~! syntax:) ((~ (code.local_identifier (maybe.default name alias))))
- (\ (~! meta.monad) (~' wrap)
- (list (` (.:as (~ (nilable_type fieldT)) (~ imported))))))))))
+ (in (list (` ((~! syntax:) ((~ (code.local_identifier (maybe.default name alias))))
+ (\ (~! meta.monad) (~' in)
+ (list (` (.:as (~ (nilable_type fieldT)) (~ imported))))))))))
)))