Loading...
Searching...
No Matches
string_refinement_util.h File Reference
+ Include dependency graph for string_refinement_util.h:
+ This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Represents arrays of the form
array_of(x) with {i:=a} with {j:=b} ... by a default value
x and a list of entries
(i,a),
(j,b) etc.
More...
Represents arrays by the indexes up to which the value remains the same.
More...
For now, any unsigned bitvector type of width smaller or equal to 16 is considered a character.
Distinguish char array from other types.
For now, any unsigned bitvector type is considered a character.
Construct a string from a constant array.
Function Documentation
◆ has_char_array_subexpr()
- Parameters
-
expr an expression
ns namespace
- Returns
- true if a subexpression of
expr is an array of characters
Definition at line 45 of file string_refinement_util.cpp.
◆ has_char_pointer_subtype()
- Parameters
-
type a type
ns namespace
- Returns
- true if a subtype of
type is an pointer of characters. The meaning of "subtype" is in the algebraic datatype sense: for example, the subtypes of a struct are the types of its components, the subtype of a pointer is the type it points to, etc...
Definition at line 40 of file string_refinement_util.cpp.
◆ is_char_array_type()
Distinguish char array from other types.
For now, any unsigned bitvector type is considered a character.
- Parameters
-
type a type
ns namespace
- Returns
- true if the given type is an array of characters
Definition at line 26 of file string_refinement_util.cpp.
◆ is_char_pointer_type()
For now, any unsigned bitvector type is considered a character.
- Parameters
-
type a type
- Returns
- true if the given type represents a pointer to characters
Definition at line 34 of file string_refinement_util.cpp.
◆ is_char_type()
For now, any unsigned bitvector type of width smaller or equal to 16 is considered a character.
- Note
- type that are not characters maybe detected as characters (for instance unsigned char in C), this will make dec_solve do unnecessary steps for these, but should not affect correctness.
- Parameters
-
type a type
- Returns
- true if the given type represents characters
Definition at line 20 of file string_refinement_util.cpp.
◆ utf16_constant_array_to_java()
Construct a string from a constant array.
- Parameters
-
arr an array expression containing only constants
length an unsigned value representing the length of the array
- Returns
- String of length
length represented by the array assuming each field in arr represents a character.
Definition at line 52 of file string_refinement_util.cpp.