module Unsafe: sig
.. end
Unsafe Javascript operations
type
any
Top type. Used for putting values of different types
in a same array.
val inject : 'a -> any
Coercion to top type.
val coerce : 'a Js.t -> 'b Js.t
Unsafe coercion between to Javascript objects.
val get : 'a -> 'b -> 'c
Get the value of an object property. The expression get o s
returns the value of property s
of object o
.
val set : 'a -> 'b -> 'c -> unit
Set an object property. The expression set o s v
set the property s
of object o
to value v
.
val delete : 'a -> 'b -> unit
Delete an object property. The expression delete o s
deletes property s
of object o
.
val call : 'a -> 'b -> any array -> 'c
Performs a Javascript function call. The expression
call f o a
calls the Javascript function f
with the
arguments given by the array a
, and binding this
to o
.
val fun_call : 'a -> any array -> 'b
Performs a Javascript function call. The expression
fun_call f a
calls the Javascript function f
with the
arguments given by the array a
.
val meth_call : 'a -> string -> any array -> 'b
Performs a Javascript method call. The expression
meth_call o m a
calls the Javascript method m
of object o
with the arguments given by the array a
.
val new_obj : 'a -> any array -> 'b
Create a Javascript object. The expression new_obj c a
creates a Javascript object with constructor c
using the
arguments given by the array a
.
val obj : (string * any) array -> 'a
Creates a Javascript literal object. The expression
obj a
creates a Javascript object whose fields are given by
the array a
val pure_expr : (unit -> 'a) -> 'a
Asserts that an expression is pure, and can therefore be
optimized away by the compiler if unused.
val eval_string : string -> 'a
Evaluate Javascript code
val js_expr : string -> 'a
js_expr e
will parse the JavaScript expression e
if e
is available at compile time or will failback to a
runtime evaluation. See eval_string
val pure_js_expr : string -> 'a
pure_js_expr str
behaves like pure_expr (fun () -> js_expr str)
.
val global : < .. > Js.t
Javascript global object
val callback : ('a -> 'b) -> ('c, 'a -> 'b) Js.meth_callback
Wrap an OCaml function so that it can be invoked from
Javascript. Contrary to Js.wrap_callback
, partial
application and over-application are not supported: missing
arguments will be set to undefined
and extra arguments are
lost.
val meth_callback : ('b -> 'a) -> ('b, 'a) Js.meth_callback
Wrap an OCaml function so that it can be invoked from
Javascript. The first parameter of the function will be bound
to the value of the this
implicit parameter. Contrary to
Js.wrap_meth_callback
, partial application and
over-application is not supported: missing arguments will be
set to undefined
and extra arguments are lost.
Deprecated functions.
val variable : string -> 'a
Access a Javascript variable. variable "foo"
will
return the current value of variable foo
.