aboutsummaryrefslogtreecommitdiff
path: root/lux-php/source
diff options
context:
space:
mode:
Diffstat (limited to 'lux-php/source')
-rw-r--r--lux-php/source/program.lux119
1 files changed, 60 insertions, 59 deletions
diff --git a/lux-php/source/program.lux b/lux-php/source/program.lux
index 716405587..b97adb407 100644
--- a/lux-php/source/program.lux
+++ b/lux-php/source/program.lux
@@ -1,7 +1,7 @@
(.module:
[lux #*
[program (#+ program:)]
- ["." host]
+ ["." ffi]
["." debug]
[abstract
["." monad (#+ do)]]
@@ -16,7 +16,8 @@
["." maybe]
["." text ("#\." hash)
["%" format (#+ format)]
- ["." encoding]]
+ [encoding
+ ["." utf8]]]
[collection
["." array (#+ Array)]]]
[macro
@@ -63,108 +64,108 @@
["#." cli]
["#." static]]])
-(host.import: java/lang/String)
+(ffi.import: java/lang/String)
-(host.import: java/lang/reflect/Field
+(ffi.import: java/lang/reflect/Field
["#::."
(get [java/lang/Object] java/lang/Object)])
-(host.import: java/lang/reflect/AccessibleObject
+(ffi.import: java/lang/reflect/AccessibleObject
["#::."
(setAccessible [boolean] void)])
-(host.import: (java/lang/Class a)
+(ffi.import: (java/lang/Class a)
["#::."
(getDeclaredField [java/lang/String] java/lang/reflect/Field)])
-(host.import: java/lang/Object
+(ffi.import: java/lang/Object
["#::."
(toString [] java/lang/String)
(getClass [] (java/lang/Class java/lang/Object))])
-(host.import: java/lang/Integer)
+(ffi.import: java/lang/Integer)
-(host.import: java/lang/Long
+(ffi.import: java/lang/Long
["#::."
(intValue [] java/lang/Integer)])
-(host.import: php/runtime/Memory
+(ffi.import: php/runtime/Memory
["#::."
(valueOfIndex #as generic_valueOfIndex [php/runtime/env/TraceInfo php/runtime/Memory] php/runtime/Memory)
(valueOfIndex #as long_valueOfIndex [php/runtime/env/TraceInfo long] php/runtime/Memory)
(valueOfIndex #as string_valueOfIndex [php/runtime/env/TraceInfo java/lang/String] php/runtime/Memory)])
-(host.import: php/runtime/Memory$Type
+(ffi.import: php/runtime/Memory$Type
["#::."
(#enum ARRAY)])
-(host.import: php/runtime/memory/NullMemory
+(ffi.import: php/runtime/memory/NullMemory
["#::."
(#static INSTANCE php/runtime/memory/NullMemory)])
-(host.import: php/runtime/memory/FalseMemory
+(ffi.import: php/runtime/memory/FalseMemory
["#::."
(#static INSTANCE php/runtime/memory/FalseMemory)])
-(host.import: php/runtime/memory/TrueMemory
+(ffi.import: php/runtime/memory/TrueMemory
["#::."
(#static INSTANCE php/runtime/memory/TrueMemory)])
-(host.import: php/runtime/memory/LongMemory
+(ffi.import: php/runtime/memory/LongMemory
["#::."
(new [long])
(toLong [] long)
(#static valueOf #manual [int] php/runtime/Memory)])
-(host.import: php/runtime/memory/DoubleMemory
+(ffi.import: php/runtime/memory/DoubleMemory
["#::."
(new [double])
(toDouble [] double)])
-(host.import: php/runtime/memory/StringMemory
+(ffi.import: php/runtime/memory/StringMemory
["#::."
(new [java/lang/String])
(toString [] java/lang/String)])
-(host.import: php/runtime/memory/ReferenceMemory
+(ffi.import: php/runtime/memory/ReferenceMemory
["#::."
(getValue [] php/runtime/Memory)])
-(host.import: php/runtime/memory/ArrayMemory
+(ffi.import: php/runtime/memory/ArrayMemory
["#::."
(new [[java/lang/Object]])
(size [] int)
(isMap [] boolean)
(get [php/runtime/Memory] #? php/runtime/Memory)])
-(host.import: php/runtime/lang/IObject)
+(ffi.import: php/runtime/lang/IObject)
-(host.import: php/runtime/memory/ObjectMemory
+(ffi.import: php/runtime/memory/ObjectMemory
["#::."
(value php/runtime/lang/IObject)])
-(host.import: php/runtime/env/Environment)
+(ffi.import: php/runtime/env/Environment)
-(host.import: php/runtime/env/TraceInfo
+(ffi.import: php/runtime/env/TraceInfo
["#::."
(new [java/lang/String int int])])
-(host.import: php/runtime/reflection/FunctionEntity)
+(ffi.import: php/runtime/reflection/FunctionEntity)
-(host.import: php/runtime/invoke/InvokeHelper
+(ffi.import: php/runtime/invoke/InvokeHelper
["#::."
(#static callAny [php/runtime/Memory [php/runtime/Memory] php/runtime/env/Environment php/runtime/env/TraceInfo]
#try php/runtime/Memory)])
-(host.import: php/runtime/lang/Closure
+(ffi.import: php/runtime/lang/Closure
["#::."
(call [php/runtime/env/Environment [php/runtime/Memory]] #try php/runtime/Memory)])
(template [<name>]
- [(host.interface: <name>
+ [(ffi.interface: <name>
(getValue [] java/lang/Object))
- (`` (host.import: (~~ (template.identifier ["program/" <name>]))
+ (`` (ffi.import: (~~ (template.identifier ["program/" <name>]))
["#::."
(getValue [] java/lang/Object)]))]
@@ -181,36 +182,36 @@
(def: (value_wrapper lux_structure value)
(-> (-> (Array java/lang/Object) php/runtime/Memory) java/lang/Object php/runtime/Memory)
- (<| (if (host.null? value)
+ (<| (if (ffi.null? value)
(php/runtime/memory/NullMemory::INSTANCE))
- (case (host.check java/lang/Boolean value)
+ (case (ffi.check java/lang/Boolean value)
(#.Some value)
(if (:coerce Bit value)
(php/runtime/memory/TrueMemory::INSTANCE)
(php/runtime/memory/FalseMemory::INSTANCE))
#.None)
- (case (host.check java/lang/Long value)
+ (case (ffi.check java/lang/Long value)
(#.Some value)
(php/runtime/memory/LongMemory::new value)
#.None)
- (case (host.check java/lang/Double value)
+ (case (ffi.check java/lang/Double value)
(#.Some value)
(php/runtime/memory/DoubleMemory::new value)
#.None)
- (case (host.check java/lang/String value)
+ (case (ffi.check java/lang/String value)
(#.Some value)
(php/runtime/memory/StringMemory::new value)
#.None)
- (case (host.check [java/lang/Object] value)
+ (case (ffi.check [java/lang/Object] value)
(#.Some value)
(lux_structure (:coerce (Array java/lang/Object) value))
#.None)
- (case (host.check php/runtime/memory/ObjectMemory value)
+ (case (ffi.check php/runtime/memory/ObjectMemory value)
(#.Some value)
value
@@ -223,7 +224,7 @@
(def: (lux_structure value)
(-> (Array java/lang/Object) php/runtime/Memory)
- (`` (host.object [] php/runtime/Memory
+ (`` (ffi.object [] php/runtime/Memory
[program/StructureValue]
[{php/runtime/Memory$Type php/runtime/Memory$Type::ARRAY}]
## Methods
@@ -242,7 +243,7 @@
{index php/runtime/Memory})
php/runtime/Memory
(`` (<| (~~ (template [<class> <method> <extractor>]
- [(case (host.check <class> index)
+ [(case (ffi.check <class> index)
(#.Some index)
(<method> trace (<extractor> index) self)
@@ -318,7 +319,7 @@
maybe.assume
(:coerce php/runtime/memory/ReferenceMemory)
php/runtime/memory/ReferenceMemory::getValue)]
- (case (host.check php/runtime/memory/NullMemory value)
+ (case (ffi.check php/runtime/memory/NullMemory value)
(#.Some _)
(recur (inc idx) output)
@@ -358,9 +359,9 @@
maybe.assume
(:coerce php/runtime/memory/ReferenceMemory)
php/runtime/memory/ReferenceMemory::getValue
- (host.check php/runtime/memory/NullMemory))
+ (ffi.check php/runtime/memory/NullMemory))
(#.Some _)
- (host.null)
+ (ffi.null)
#.None
synthesis.unit))
@@ -377,7 +378,7 @@
(def: (read host_object)
Reader
(`` (<| (~~ (template [<class> <constant>]
- [(case (host.check <class> host_object)
+ [(case (ffi.check <class> host_object)
(#.Some _)
(#try.Success <constant>)
@@ -387,7 +388,7 @@
[php/runtime/memory/TrueMemory true]
))
(~~ (template [<class> <post>]
- [(case (host.check <class> host_object)
+ [(case (ffi.check <class> host_object)
(#.Some value)
(`` (|> value (~~ (template.splice <post>))))
@@ -400,7 +401,7 @@
[php/runtime/memory/ReferenceMemory [php/runtime/memory/ReferenceMemory::getValue read]]
[php/runtime/memory/ObjectMemory [#try.Success]]
))
- (case (host.check php/runtime/memory/ArrayMemory host_object)
+ (case (ffi.check php/runtime/memory/ArrayMemory host_object)
(#.Some value)
(if (|> value
(php/runtime/memory/ArrayMemory::get ..tuple_size_field)
@@ -417,11 +418,11 @@
["Class" (java/lang/Object::toString (java/lang/Object::getClass object))]
["Non-function" (java/lang/Object::toString object)]))
-(host.import: javax/script/ScriptEngine
+(ffi.import: javax/script/ScriptEngine
["#::."
(eval [java/lang/String] #try Object)])
-(host.import: org/develnext/jphp/scripting/JPHPScriptEngine
+(ffi.import: org/develnext/jphp/scripting/JPHPScriptEngine
["#::."
(new [])])
@@ -429,7 +430,7 @@
(-> Macro (Maybe php/runtime/memory/ObjectMemory))
(|> macro
(:coerce java/lang/Object)
- (host.check php/runtime/memory/ObjectMemory)))
+ (ffi.check php/runtime/memory/ObjectMemory)))
(def: interpreter
(org/develnext/jphp/scripting/JPHPScriptEngine::new))
@@ -448,10 +449,10 @@
(<| :assume
(do try.monad
[output (php/runtime/lang/Closure::call ..default_environment
- (|> (host.array php/runtime/Memory 3)
- (host.array_write 0 macro)
- (host.array_write 1 (lux_structure (:coerce (Array java/lang/Object) inputs)))
- (host.array_write 2 (lux_structure (:coerce (Array java/lang/Object) lux))))
+ (|> (ffi.array php/runtime/Memory 3)
+ (ffi.array_write 0 macro)
+ (ffi.array_write 1 (lux_structure (:coerce (Array java/lang/Object) inputs)))
+ (ffi.array_write 2 (lux_structure (:coerce (Array java/lang/Object) lux))))
(:coerce php/runtime/lang/Closure
(php/runtime/memory/ObjectMemory::value macro)))]
(..read (:coerce java/lang/Object output)))))
@@ -489,7 +490,7 @@
(wrap [global value definition]))))
(def: (ingest context content)
- (|> content (\ encoding.utf8 decode) try.assume (:coerce _.Statement)))
+ (|> content (\ utf8.codec decode) try.assume (:coerce _.Statement)))
(def: (re_learn context content)
(run! content))
@@ -507,7 +508,7 @@
#platform.host host
#platform.phase php.generate
#platform.runtime runtime.generate
- #platform.write (|>> _.code (\ encoding.utf8 encode))})))
+ #platform.write (|>> _.code (\ utf8.codec encode))})))
(def: (program context program)
(Program _.Expression _.Statement)
@@ -535,13 +536,13 @@
#let [to_php (: (-> Any php/runtime/Memory)
(|>> (:coerce (Array java/lang/Object)) lux_structure (:coerce php/runtime/Memory)))]
output (php/runtime/lang/Closure::call ..default_environment
- (|> (host.array php/runtime/Memory 6)
- (host.array_write 0 handler)
- (host.array_write 1 (php/runtime/memory/StringMemory::new name))
- (host.array_write 2 (to_php phase))
- (host.array_write 3 (to_php archive))
- (host.array_write 4 (to_php parameters))
- (host.array_write 5 (to_php state)))
+ (|> (ffi.array php/runtime/Memory 6)
+ (ffi.array_write 0 handler)
+ (ffi.array_write 1 (php/runtime/memory/StringMemory::new name))
+ (ffi.array_write 2 (to_php phase))
+ (ffi.array_write 3 (to_php archive))
+ (ffi.array_write 4 (to_php parameters))
+ (ffi.array_write 5 (to_php state)))
(:coerce php/runtime/lang/Closure
(php/runtime/memory/ObjectMemory::value handler)))]
(..read output))))