Reference: Abstract Syntax Trees¶
Added in version 2014.1.
Symbolic Constants¶
- class islpy.ast_expr_op_type(*values)¶
- access = 23¶
- add = 7¶
- address_of = 25¶
- and_ = 0¶
- and_then = 1¶
- call = 22¶
- cond = 15¶
- div = 10¶
- eq = 17¶
- error = -1¶
- fdiv_q = 11¶
- ge = 20¶
- gt = 21¶
- le = 18¶
- lt = 19¶
- max = 4¶
- member = 24¶
- min = 5¶
- minus = 6¶
- mul = 9¶
- or_ = 2¶
- or_else = 3¶
- pdiv_q = 12¶
- pdiv_r = 13¶
- select = 16¶
- sub = 8¶
- zdiv_r = 14¶
AST Expression¶
- class islpy.AstExpr¶
- __hash__()¶
Return hash(self).
- access(self, indices: AstExprList) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- add(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- address_of(self) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- and_(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- and_then(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- call(self, arguments: AstExprList) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- copy(self) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- div(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- dump(self) None ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- eq(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- from_id = <nanobind.nb_func object>¶
- from_val = <nanobind.nb_func object>¶
- ge(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_ctx(self) Context ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_id(self) Id ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_op_arg(self, pos: int) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_op_n_arg(self) int ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_op_type(self) int ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_type(self) int ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_val(self) Val ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- gt(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- is_equal(self, expr2: AstExpr) bool ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- le(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- lt(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- mul(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- neg(self) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- op_get_type(self) int ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- op_type_set_print_name = <nanobind.nb_func object>¶
- or_(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- or_else(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- pdiv_q(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- pdiv_r(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- print_macros(self, p: Printer) Printer ¶
- ..note::
{arg.name} becomes invalid)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_op_arg(self, pos: int, arg: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- sub(self, expr2: AstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- substitute_ids(self, id2expr: IdToAstExpr) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- to_list(self) AstExprList ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
AST Node¶
- class islpy.AstNode¶
- __eq__(value, /)¶
Return self==value.
- __hash__()¶
Return hash(self).
- __ne__(value, /)¶
Return self!=value.
- alloc_user = <nanobind.nb_func object>¶
- block_get_children(self) AstNodeList ¶
- copy(self) AstNode ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- dump(self) None ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- for_print(self, p: Printer, options: AstPrintOptions) Printer ¶
- ..note::
{arg.name} becomes invalid)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- foreach_descendant_top_down(self, fn: Callable[[AstNode], bool]) None ¶
- Parameters:
fn – callback(node)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_annotation(self) Id ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_ctx(self) Context ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_type(self) int ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- if_get_else(self) AstNode ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- if_get_then(self) AstNode ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- if_has_else(self) bool ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- if_print(self, p: Printer, options: AstPrintOptions) Printer ¶
- ..note::
{arg.name} becomes invalid)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- map_descendant_bottom_up(self, fn: Callable[[AstNode], AstNode]) AstNode ¶
- Parameters:
fn – callback(node)
- print_(self, p: Printer, options: AstPrintOptions) Printer ¶
- ..note::
{arg.name} becomes invalid)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- print_macros(self, p: Printer) Printer ¶
- ..note::
{arg.name} becomes invalid)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_annotation(self, annotation: Id) AstNode ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- to_list(self) AstNodeList ¶
- to_str(self) str ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- user_from_expr = <nanobind.nb_func object>¶
AST Build¶
- class islpy.AstBuild¶
- __eq__(value, /)¶
Return self==value.
- __hash__()¶
Return hash(self).
- __ne__(value, /)¶
Return self!=value.
- access_from_multi_pw_aff(self, mpa: MultiPwAff) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- access_from_pw_multi_aff(self, pma: PwMultiAff | MultiAff) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- alloc = <nanobind.nb_func object>¶
- ast_from_schedule(self, schedule: UnionMap | BasicMap | Map) AstNode ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- call_from_multi_pw_aff(self, mpa: MultiPwAff) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- call_from_pw_multi_aff(self, pma: PwMultiAff | MultiAff) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- copy(self) AstBuild ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- expr_from_pw_aff(self, pa: PwAff | Aff) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- expr_from_set(self, set: Set | BasicSet) AstExpr ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- from_context = <nanobind.nb_func object>¶
- get_ctx(self) Context ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_schedule_space(self) Space ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- node_from_schedule(self, schedule: Schedule) AstNode ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- restrict(self, set: Set | BasicSet) AstBuild ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_after_each_for(self, fn: Callable[[AstNode, AstBuild], AstNode]) tuple[AstBuild, CallbackLifetimeHandle] ¶
- Parameters:
fn – callback(node, build)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_after_each_mark(self, fn: Callable[[AstNode, AstBuild], AstNode]) tuple[AstBuild, CallbackLifetimeHandle] ¶
- Parameters:
fn – callback(node, build)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_at_each_domain(self, fn: Callable[[AstNode, AstBuild], AstNode]) tuple[AstBuild, CallbackLifetimeHandle] ¶
- Parameters:
fn – callback(node, build)
- set_before_each_for(self, fn: Callable[[AstBuild], Id]) tuple[AstBuild, CallbackLifetimeHandle] ¶
- Parameters:
fn – callback(build)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_before_each_mark(self, fn: Callable[[Id, AstBuild], None]) tuple[AstBuild, CallbackLifetimeHandle] ¶
- Parameters:
fn – callback(mark, build)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_create_leaf(self, fn: Callable[[AstBuild], AstNode]) tuple[AstBuild, CallbackLifetimeHandle] ¶
- Parameters:
fn – callback(build)
Warning
This function is not part of the officially public isl API. Use at your own risk.
AST Print Options¶
- class islpy.AstPrintOptions¶
- __eq__(value, /)¶
Return self==value.
- __hash__()¶
Return hash(self).
- __ne__(value, /)¶
Return self!=value.
- alloc = <nanobind.nb_func object>¶
- copy(self) AstPrintOptions ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_ctx(self) Context ¶
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_print_for(self, print_for: Callable[[Printer, AstPrintOptions, AstNode], Printer]) tuple[AstPrintOptions, CallbackLifetimeHandle] ¶
- Parameters:
print_for – callback(p, options, node)
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_print_user(self, print_user: Callable[[Printer, AstPrintOptions, AstNode], Printer]) tuple[AstPrintOptions, CallbackLifetimeHandle] ¶
- Parameters:
print_user – callback(p, options, node)
Warning
This function is not part of the officially public isl API. Use at your own risk.
Canonical Names for Internal Module¶
- class islpy._isl.ast_expr_op_type¶
- class islpy._isl.ast_expr_type¶
See
islpy.ast_expr_type
.
- class islpy._isl.ast_node_type¶
See
islpy.ast_node_type
.
- class islpy._isl.ast_loop_type¶
See
islpy.ast_loop_type
.
- class islpy._isl.AstExpr¶
See
islpy.AstExpr
.
- class islpy._isl.AstNode¶
See
islpy.AstNode
.
- class islpy._isl.AstBuild¶
See
islpy.AstBuild
.
- class islpy._isl.AstPrintOptions¶