A Z3 sort (aka type). Every expression (i.e., formula or term) in Z3 has a sort. More...
Inheritance diagram for sort:Public Member Functions | |
| sort (context &c) | |
| sort (context &c, Z3_sort s) | |
| sort (context &c, Z3_ast a) | |
| operator Z3_sort () const | |
| unsigned | id () const |
| retrieve unique identifier for func_decl. More... | |
| Z3_sort_kind | sort_kind () const |
| Return the internal sort kind. More... | |
| symbol | name () const |
| Return name of sort. More... | |
| bool | is_bool () const |
| Return true if this sort is the Boolean sort. More... | |
| bool | is_int () const |
| Return true if this sort is the Integer sort. More... | |
| bool | is_real () const |
| Return true if this sort is the Real sort. More... | |
| bool | is_arith () const |
| Return true if this sort is the Integer or Real sort. More... | |
| bool | is_bv () const |
| Return true if this sort is a Bit-vector sort. More... | |
| bool | is_array () const |
| Return true if this sort is a Array sort. More... | |
| bool | is_datatype () const |
| Return true if this sort is a Datatype sort. More... | |
| bool | is_relation () const |
| Return true if this sort is a Relation sort. More... | |
| bool | is_seq () const |
| Return true if this sort is a Sequence sort. More... | |
| bool | is_re () const |
| Return true if this sort is a regular expression sort. More... | |
| bool | is_finite_domain () const |
| Return true if this sort is a Finite domain sort. More... | |
| bool | is_fpa () const |
| Return true if this sort is a Floating point sort. More... | |
| unsigned | bv_size () const |
| Return the size of this Bit-vector sort. More... | |
| unsigned | fpa_ebits () const |
| unsigned | fpa_sbits () const |
| sort | array_domain () const |
| Return the domain of this Array sort. More... | |
| sort | array_range () const |
| Return the range of this Array sort. More... | |
| func_decl_vector | constructors () |
| func_decl_vector | recognizers () |
Public Member Functions inherited from ast | |
| ast (context &c) | |
| ast (context &c, Z3_ast n) | |
| ast (ast const &s) | |
| ~ast () override | |
| operator Z3_ast () const | |
| operator bool () const | |
| ast & | operator= (ast const &s) |
| Z3_ast_kind | kind () const |
| unsigned | hash () const |
| std::string | to_string () const |
Public Member Functions inherited from object | |
| object (context &c) | |
| virtual | ~object ()=default |
| context & | ctx () const |
| Z3_error_code | check_error () const |
Friends | |
| std::ostream & | operator<< (std::ostream &out, sort const &s) |
Additional Inherited Members | |
Protected Attributes inherited from ast | |
| Z3_ast | m_ast |
Protected Attributes inherited from object | |
| context * | m_ctx |
A Z3 sort (aka type). Every expression (i.e., formula or term) in Z3 has a sort.
Definition at line 659 of file z3++.h.
Referenced by sort::array_domain(), sort::array_range(), FPNumRef::as_string(), ArrayRef::domain(), ArrayRef::domain_n(), FPRef::ebits(), ArithRef::is_int(), ArithRef::is_real(), ArrayRef::range(), FPRef::sbits(), BitVecRef::size(), and ExprRef::sort_kind().
Definition at line 660 of file z3++.h.
Referenced by FPNumRef::as_string(), ArrayRef::domain(), ArrayRef::domain_n(), FPRef::ebits(), ArithRef::is_int(), ArithRef::is_real(), ArrayRef::range(), FPRef::sbits(), BitVecRef::size(), and ExprRef::sort_kind().
Definition at line 661 of file z3++.h.
Referenced by FPNumRef::as_string(), ArrayRef::domain(), ArrayRef::domain_n(), FPRef::ebits(), ArithRef::is_int(), ArithRef::is_real(), ArrayRef::range(), FPRef::sbits(), BitVecRef::size(), and ExprRef::sort_kind().
|
inline |
Return the domain of this Array sort.
Definition at line 741 of file z3++.h.
Referenced by z3::select(), and z3::store().
|
inline |
Return the range of this Array sort.
Definition at line 747 of file z3++.h.
Referenced by z3::store().
|
inline |
Return the size of this Bit-vector sort.
Definition at line 731 of file z3++.h.
|
inline |
Definition at line 4192 of file z3++.h.
Referenced by Datatype::__deepcopy__(), Datatype::__repr__(), and Datatype::declare_core().
|
inline |
Definition at line 733 of file z3++.h.
|
inline |
|
inline |
|
inline |
Return true if this sort is the Integer or Real sort.
Definition at line 692 of file z3++.h.
Referenced by expr::is_arith().
|
inline |
Return true if this sort is a Array sort.
Definition at line 700 of file z3++.h.
Referenced by sort::array_domain(), sort::array_range(), and expr::is_array().
|
inline |
Return true if this sort is the Boolean sort.
Definition at line 680 of file z3++.h.
Referenced by expr::is_bool().
|
inline |
Return true if this sort is a Bit-vector sort.
Definition at line 696 of file z3++.h.
Referenced by sort::bv_size(), and expr::is_bv().
|
inline |
Return true if this sort is a Datatype sort.
Definition at line 704 of file z3++.h.
Referenced by func_decl::accessors(), sort::constructors(), expr::is_datatype(), and sort::recognizers().
|
inline |
Return true if this sort is a Finite domain sort.
Definition at line 720 of file z3++.h.
Referenced by expr::is_finite_domain().
|
inline |
Return true if this sort is a Floating point sort.
Definition at line 724 of file z3++.h.
Referenced by sort::fpa_ebits(), sort::fpa_sbits(), and expr::is_fpa().
|
inline |
Return true if this sort is the Integer sort.
Definition at line 684 of file z3++.h.
Referenced by IntNumRef::as_long(), sort::is_arith(), expr::is_int(), and ArithSortRef::subsort().
|
inline |
Return true if this sort is a regular expression sort.
Definition at line 716 of file z3++.h.
Referenced by expr::is_re().
|
inline |
Return true if this sort is the Real sort.
Definition at line 688 of file z3++.h.
Referenced by sort::is_arith(), and expr::is_real().
|
inline |
Return true if this sort is a Relation sort.
Definition at line 708 of file z3++.h.
Referenced by expr::is_relation().
|
inline |
Return true if this sort is a Sequence sort.
Definition at line 712 of file z3++.h.
Referenced by expr::is_seq().
|
inline |
Return name of sort.
Definition at line 676 of file z3++.h.
Referenced by Datatype::__deepcopy__(), and Datatype::__repr__().
|
inline |
|
inline |
Return the internal sort kind.
Definition at line 672 of file z3++.h.
Referenced by sort::is_array(), sort::is_bool(), sort::is_bv(), sort::is_datatype(), sort::is_finite_domain(), sort::is_fpa(), sort::is_int(), sort::is_re(), sort::is_real(), sort::is_relation(), and sort::is_seq().