Up
module
Js_traverse
:
sig
#
class type
mapper =
#
method
expression :
Javascript
.
expression
->
Javascript
.
expression
#
method
expression_o :
Javascript
.
expression
option
->
Javascript
.
expression
option
#
method
switch_case :
Javascript
.
expression
->
Javascript
.
expression
#
method
initialiser :
Javascript
.
expression
*
Javascript
.
location
->
Javascript
.
expression
*
Javascript
.
location
#
method
initialiser_o : (
Javascript
.
expression
*
Javascript
.
location
) option
->
(
Javascript
.
expression
*
Javascript
.
location
) option
#
method
statement :
Javascript
.
statement
->
Javascript
.
statement
#
method
statements :
Javascript
.
statement_list
->
Javascript
.
statement_list
#
method
statement_o : (
Javascript
.
statement
*
Javascript
.
location
) option
->
(
Javascript
.
statement
*
Javascript
.
location
) option
#
method
source :
Javascript
.
source_element
->
Javascript
.
source_element
#
method
sources :
Javascript
.
source_elements
->
Javascript
.
source_elements
#
method
ident :
Javascript
.
ident
->
Javascript
.
ident
#
method
program :
Javascript
.
program
->
Javascript
.
program
#
class
map :
mapper
#
class
subst :
Javascript
.
ident
->
Javascript
.
ident
->
inherit
mapper
#
type
t = {
#
use_name
:
Util
.StringSet.t
;
#
def_name
:
Util
.StringSet.t
;
#
def
:
Code
.
VarSet
.
t
;
#
use
:
Code
.
VarSet
.
t
;
#
count
: int
Javascript
.
IdentMap
.
t
;
}
#
class type
freevar = ('a)
inherit
mapper
#
method
merge_info : 'a
->
unit
#
method
block : ?catch:bool
->
Javascript
.
ident
list
->
unit
#
method
def_var :
Javascript
.
ident
->
unit
#
method
use_var :
Javascript
.
ident
->
unit
#
method
state :
t
#
method
get_free_name :
Util
.StringSet.t
#
method
get_free :
Code
.
VarSet
.
t
#
method
get_def_name :
Util
.StringSet.t
#
method
get_def :
Code
.
VarSet
.
t
#
method
get_use_name :
Util
.StringSet.t
#
method
get_use :
Code
.
VarSet
.
t
#
class
free :
freevar
#
class
rename_variable :
Util
.StringSet.t
->
freevar
#
class
share_constant :
mapper
#
class
compact_vardecl : ('a)
inherit
free
#
method
exc :
Javascript
.
IdentSet
.
t
#
class
clean :
mapper
#
class
simpl :
mapper
end