A | |
add [Inf.Const] | add obs adds the basic constraint obs to the global
constraint set.
|
add_alias [GenVars.VAR_WITHOUT_IMG] |
make two variables equal
|
add_img [GenVars.VAR] |
extends the image of the mapping from type variables to types
|
add_observer [GenVars.VAR_WITHOUT_IMG] |
add a new observer
|
add_to_lenv [Inf.Type] | |
add_to_obj [Inf.Type] | |
add_wl [Inf.Const] | add_wl obs adds the observer obs to the working list.
|
add_wl [GenVars.STATE] | |
align [Args] | |
C | |
c_false [Inf.ConstBasic] | |
c_true [Inf.ConstBasic] | |
choose_lower [Gvars.VARS.LSVar] | |
clear [PrioQueue.S] | |
collect_locs [Syntax] |
collects all locations from a program
|
compare [ProgLabel] |
Compares to program labels.
|
compare [PrioQueue.DATA] | |
compare [LowerUpper.SS_WO_ME] | |
compare [LowerUpper.S] |
compare to values
|
compare [LowerUpperNeg.S] |
compare to values
|
compare [Location.Loc] |
Compares two locations
|
compare [GenVars.VAR_WITHOUT_IMG] |
compare type variables.
|
compare [GenVars.OBSERVER] |
comapres two observers
|
compare [GenVars.IMG] |
compare to values
|
compare_label [Syntax] |
comapres to labels
|
compare_plab [Syntax] |
comapre to program labels
|
compare_var [Syntax] |
compares to variables.
|
create [PrioQueue.S] | |
create [Location.Loc] |
create a new location
|
create [GenVars.VAR_WITHOUT_IMG] |
create a new uniquie type variable
|
create_c_demotation_lenv [Inf.ConstBasic] | create_c_demonation_lenv lev1 mu lev2 creates a constraint that
changes all precise pointers, for which the location is part of
mu, into imprecise pointers.
|
create_c_demotation_lenv_phi [Inf.ConstBasic] | create_c_demonation_lenv_ls lev1 mu ls lev2
creates a constraint that ensures that the intersection of
the domain of variables lev1 and ls is empty.
|
create_c_demotation_type [Inf.ConstBasic] | |
create_c_disjoint [Inf.ConstBasic] | |
create_c_domain_eq [Inf.ConstBasic] | |
create_c_eqlenv [Inf.ConstBasic] | |
create_c_eqobj [Inf.ConstBasic] | |
create_c_eqpres [Inf.ConstBasic] | |
create_c_eqset [Inf.ConstBasic] | |
create_c_eqtype [Inf.ConstBasic] | |
create_c_exclude [Inf.ConstBasic] | |
create_c_flow [Inf.ConstBasic] | |
create_c_include [Inf.ConstBasic] | |
create_c_lev_empty_obj [Inf.ConstBasic] | |
create_c_locs [Inf.ConstBasic] | |
create_c_read [Inf.ConstBasic] | |
create_c_subset [Inf.ConstBasic] | |
create_c_subtype [Inf.ConstBasic] | |
create_c_write [Inf.ConstBasic] | |
create_e [Gen.Gen] |
create the constraints for an expression
|
create_exact [Location.P] |
Create a new unique exact pointer
|
create_inexact [Location.P] |
Create a new unique inexact pointer
|
create_label [Syntax] |
creates a new label
|
create_lenv_levar [Inf.Type] | |
create_lower [LowerUpper.S] |
create a lower bound
|
create_lower [LowerUpperNeg.S] |
create a lower bound
|
create_lowerneg [LowerUpperNeg.S] |
create a lower bound and a negative information
|
create_lowerupper [LowerUpper.S] |
create a lower and an upper bound
|
create_lowerupper [LowerUpperNeg.S] |
create a lower and an upper bound
|
create_neg [LowerUpperNeg.S] |
creates a negative information
|
create_new [ProgLabel] |
create a new program label.
|
create_phi_ls [Inf.Type] | |
create_phi_lsvar [Inf.Type] | |
create_plab [Syntax] |
create a program label
|
create_q_pv [Inf.Type] | |
create_r_otv [Inf.Type] | |
create_s [Gen.Gen] |
create the constraints for a serious expression
|
create_t_fun [Inf.Type] | |
create_t_obj [Inf.Type] | |
create_t_tv [Inf.Type] | |
create_upper [LowerUpper.S] |
creates an upper bound
|
create_upper [LowerUpperNeg.S] |
creates an upper bound
|
create_v [Gen.Gen] |
create the constraints for a value
|
create_var [Syntax] |
creates a new variable from a string
|
D | |
diff [LowerUpperNeg.SMALLSET] | |
disjoint [LUNVar.S] | |
do_normalize [GenVars.VAR_WITHOUT_IMG] |
This function is called by observers every time something
with the image of the variable changes.
|
do_on_exact [Gvars.VARS.TVar] | |
do_on_lower [Gvars.VARS.PrVar] | |
do_on_lower [Gvars.VARS.TVar] | |
do_on_upper [Gvars.VARS.PrVar] | |
do_on_upper [Gvars.VARS.TVar] | |
domain [MapVar.S_WITHOUT_STATE] |
Returns the domain of the map
|
E | |
e_get_plab [Syntax] |
returns the program label
|
e_let [Syntax] |
Creates a let expression
|
e_mask [Syntax] |
Creates a mask expression (Mask
e )
|
e_sexp [Syntax] |
Creates an expression from a serious expression
|
empty_lenv [Inf.Type] | |
empty_obj [Inf.Type] | |
equal_possible [Gvars.VARS.LSVar] | |
equal_possible_lset [Gvars.VARS.LSVar] | |
F | |
find' [MapVar.S_WITHOUT_STATE] | find' k map returns Some b if map(k) == b .
|
find_or_add [MapVar.S_WITHOUT_STATE] | find_or_add ~create:c ~key:k ~map:m
returns m(k) if k in domain(m) .
|
fire [GenVars.OBSERVER] |
this method is called if the image of the variable
changes
|
fold [MapVar.S_WITHOUT_STATE] |
Like a fold operator on a map
|
free_e [Syntax] | free_e e computes the free variables of e and
returns it as a set.
|
free_s [Syntax] | free_s s computes the free variables of s and
returns it as a set.
|
free_v [Syntax] | free_e v computes the free variables of v and
returns it as a set.
|
from_int [Location.Loc] |
IMPORTANT: Use this only, if you lex code.
|
full_visit [Inf.Const] |
Calling of
full_visit adds all constraints that are part of
the global constraint set to the work list.
|
G | |
get_all_ts [GenVars.VAR_WITHOUT_IMG] | |
get_domain_var [MapVar.S] | |
get_exact [LUVar.S] | |
get_exact [LowerUpper.S] |
If the upper and lower bound are equal, then
the exact value is returned.
|
get_exact [LowerUpperNeg.S] |
If the upper and lower bound are equal, then
the exact value is returned.
|
get_img [GenVars.VAR] |
returns the image
|
get_location [Location.P] | get_location p returns the location of the pointer.
|
get_lower [LUVar.S] | |
get_neg [LUNVar.S] | |
get_upper [LUVar.S] | |
H | |
hash [PrioQueue.DATA] | |
I | |
inter [LowerUpper.SS_WO_ME] |
If
inter t1 t2 is called please compute a value t such that
subset t t1 and subset t t2 holds.
|
is_empty [PrioQueue.S] | |
is_empty [LowerUpper.SS_WO_ME] | is_empty t should returns true if t is the empty set,
otherwise it returns false .
|
is_false [Inf.Const] | is_false str adds the constraint False (Some s) to the
global constraint set and removes all other constraints from
the set.
|
is_one_possible [Gvars.VARS.LSVar] | |
is_precise [Location.P] | is_precise p returns true if the pointer is precise,
otherwise false is returned.
|
iter [MapVar.S_WITHOUT_STATE] | |
L | |
laset [Syntax.LabelSetRef] | |
lower_iter [Gvars.VARS.LSVar] | |
lower_one_element [Gvars.VARS.LSVar] | |
lset [Location.LSetRef] | |
M | |
make_eq_eq [LowerUpper.SMALLSET] | |
make_eq_lower [LowerUpper.SMALLSET] | |
make_eq_upper [LowerUpper.SMALLSET] | |
make_write_equal [MapVar.S_WITHOUT_STATE] |
hm, what happens here?
|
merge [LowerUpper.S] |
merge to sets
|
merge [LowerUpperNeg.S] |
unions two LSetInEx.t values
|
merge [GenVars.IMG] |
merge these two images, such that the new image
fulfills all properties of both old ones.
|
N | |
normalize [LowerUpper.SS_WO_ME] | |
normalize [LowerUpper.S] | |
normalize [GenVars.IMG] |
bring the image into a unique from
|
P | |
p_get_plab [Syntax] |
returns the program label
|
parse [Args] | |
pop [PrioQueue.S] | |
prefix [GenVars.PREFIX] | |
push [PrioQueue.S] | |
Q | |
q_ex [Inf.Type] | |
q_in [Inf.Type] | |
R | |
remove [PrioQueue.S] | |
remove [Inf.Const] | remove obs removes the basic constraint obs from the
global constraint set.
|
remove_observer [GenVars.VAR_WITHOUT_IMG] |
remove a observer
|
reset [ProgLabel] |
IMPORTENT: Do only use this function for tests.
|
reset [Location.P] |
IMPORTANT: Use this only for testing.
|
reset [Location.Loc] |
IMPORTANT: Use this only for testing.
|
reset [Inf.GEnv] | |
reset [Inf.Const] |
This function resets the global constraint.
|
reset [Inf.Vars] | |
reset [GenVars.VAR_WITHOUT_IMG] |
Resets the internal counter that allows to differ
variables from each other.
|
reset_all [Location] |
IMPORTENT: Do use this only for testing!
Calls reset of P and Loc.
|
S | |
s_app [Syntax] |
Creates a serious expression (application)
|
s_get_plab [Syntax] |
returns the program label
|
s_mcall [Syntax] |
Creates a serious expression (method call)
|
s_new [Syntax] |
Creates a serious expression (new)
|
s_new_loc [Syntax] |
Creates a serious expression (new) with the given
abstract location
|
s_read [Syntax] |
Creates a serious expression (read)
|
s_val [Syntax] |
Creates a serious expression from a value
|
s_write [Syntax] |
Creates a serious expression (write)
|
set_eq [LUVar.S] | |
set_lower [LUVar.S] | |
set_neg [LUNVar.S] | |
set_print_with_label [Syntax] | |
set_print_without_label [Syntax] | |
set_upper [LUVar.S] | |
set_upper_for_all [Gvars.VARS.LSVar] | |
solve [Inf.Const] | solve () starts the solving of the global constraint set.
|
string_of [ProgLabel] |
Returns a string representation of a program label
|
string_of [PrioQueue.DATA] | |
string_of [PrioQueue.S] | |
string_of [LowerUpper.SS_WO_ME] | |
string_of [LowerUpper.S] |
Returns a string representation of a LSetInEx.t value
|
string_of [LowerUpperNeg.S] |
Returns a string representation of a LSetInEx.t value
|
string_of [Location.P] |
Returns a string representation of a pointer
|
string_of [Location.Loc] |
Returns a string represenation of a location
|
string_of [Inf.GEnv] | |
string_of [Inf.Const] |
This returns a string representation of the global constraint.
|
string_of [Inf.ConstBasic] | |
string_of [Inf.Type] | |
string_of [GenVars.VAR_WITHOUT_IMG] |
converts a variable to a string
|
string_of [GenVars.OBSERVER] |
string representation of the observer
|
string_of [GenVars.IMG] | |
string_of [Args] | |
string_of_e [Syntax] |
Returns a string representation of an expression
|
string_of_e_with_plabs [Syntax] |
Returns an expression together with it's program locations as a string
|
string_of_img [LUVar.S] | |
string_of_label [Syntax] |
Returns a string representation of a variable
|
string_of_lam [Syntax] |
Returns a string represenation of a lambda expression
|
string_of_lam_with_plabs [Syntax] |
Returns a lambda expression together with it's program locations as a string
|
string_of_lenv [Inf.Type] | |
string_of_map [MapVar.S_WITHOUT_STATE] |
convert the map into a string
|
string_of_p [Inf.Type] | |
string_of_phi [Inf.Type] | |
string_of_plab [Syntax] |
Returns a string represenation of a program label
|
string_of_q [Inf.Type] | |
string_of_r [Inf.Type] | |
string_of_v [Syntax] |
Returns a string representation of a value.
|
string_of_v_with_plabs [Syntax] |
Returns a value together with it's program locations as a string
|
string_of_v_without_plabs [Syntax] |
Returns a string representation of a value
|
string_of_var [Syntax] |
Returns a string representation of a variable
|
string_of_with_img [MapVar.S_WITHOUT_STATE] | |
string_of_with_img [LUVar.S] | |
subset [LUVar.S] | |
subset [LowerUpper.SS_WO_ME] | subset t1 t2 should return Some true if t1 is a subset of t2 .
|
subset_possible [Gvars.VARS.LSVar] | |
subset_possible_lset [Gvars.VARS.LSVar] | |
synchronize [Gvars.VARS.LEVar] | |
T | |
t_int [Inf.Type] | |
t_top [Inf.Type] | |
t_undef [Inf.Type] | |
top [PrioQueue.S] | |
total_ord [GenVars.VAR_WITHOUT_IMG] |
compare type variables.
|
U | |
union [LowerUpper.SS_WO_ME] |
If
union t1 t2 is called please compute a value t such that
subset t1 t and subset t2 t holds.
|
union_lenv [Inf.Type] | |
upper_iter [Gvars.VARS.LSVar] | |
V | |
v_get_plab [Syntax] |
returns the program label
|
v_int [Syntax] |
Creates an integer as a value
|
v_lam [Syntax] |
Creates a value (lambda expression)
|
v_undef [Syntax] |
Creates a value (undefined)
|
v_var [Syntax] |
Creates a value (var)
|