Reference: Abstract Syntax Trees¶
Added in version 2014.1.
Symbolic Constants¶
- class islpy.ast_expr_op_type(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- 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¶
- class islpy.ast_expr_type(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
- error = -1¶
- id = 1¶
- int = 2¶
- op = 0¶
AST Expression¶
- class islpy.AstExpr¶
- __eq__(other)¶
Return self==value.
- __hash__()¶
Return hash(self).
- __ne__(other)¶
Return self!=value.
- access(self, indices)¶
- Parameters:
self –
AstExpr
indices –
AstExprList
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- add(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- address_of(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- and_(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- and_then(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- call(self, arguments)¶
- Parameters:
self –
AstExpr
arguments –
AstExprList
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- copy(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- div(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- dump(self)¶
- Parameters:
self –
AstExpr
- Returns:
None
Warning
This function is not part of the officially public isl API. Use at your own risk.
- eq(self, expr2)¶
-
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)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_ctx(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_id(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_op_arg(self, pos)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_op_n_arg(self)¶
- Parameters:
self –
AstExpr
- Returns:
isl_size
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_op_type(self)¶
- Parameters:
self –
AstExpr
- Returns:
isl_ast_expr_op_type
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_type(self)¶
- Parameters:
self –
AstExpr
- Returns:
isl_ast_expr_type
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_val(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- gt(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- is_equal(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- le(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- lt(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- mul(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- neg(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- op_get_type(self)¶
- Parameters:
self –
AstExpr
- Returns:
isl_ast_expr_op_type
Warning
This function is not part of the officially public isl API. Use at your own risk.
- op_type_print_macro(self, p)¶
- Parameters:
self –
ast_expr_op_type
p –
Printer
(becomes invalid)
- Returns:
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)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- or_else(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- pdiv_q(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- pdiv_r(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- print_macros(self, p)¶
- Parameters:
self –
AstExpr
p –
Printer
(becomes invalid)
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_op_arg(self, pos, arg)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- sub(self, expr2)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- substitute_ids(self, id2expr)¶
- Parameters:
self –
AstExpr
id2expr –
IdToAstExpr
- Returns:
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_from_children(self)¶
- Parameters:
self –
AstNodeList
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- copy(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- dump(self)¶
- Parameters:
self –
AstNode
- Returns:
None
Warning
This function is not part of the officially public isl API. Use at your own risk.
- for_print(self, p, options)¶
- Parameters:
self –
AstNode
p –
Printer
(becomes invalid)options –
AstPrintOptions
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- foreach_descendant_top_down(self, fn)¶
- Parameters:
self –
AstNode
fn – callback(node)
- Returns:
isl_stat
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_annotation(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_ctx(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_type(self)¶
- Parameters:
self –
AstNode
- Returns:
isl_ast_node_type
Warning
This function is not part of the officially public isl API. Use at your own risk.
- if_get_else(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- if_get_then(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- if_has_else(self)¶
- Parameters:
self –
AstNode
- Returns:
bool
Warning
This function is not part of the officially public isl API. Use at your own risk.
- if_print(self, p, options)¶
- Parameters:
self –
AstNode
p –
Printer
(becomes invalid)options –
AstPrintOptions
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- print_(self, p, options)¶
- Parameters:
self –
AstNode
p –
Printer
(becomes invalid)options –
AstPrintOptions
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- print_macros(self, p)¶
- Parameters:
self –
AstNode
p –
Printer
(becomes invalid)
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_annotation(self, annotation)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- to_str(self)¶
- Parameters:
self –
AstNode
- Returns:
string
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)¶
- Parameters:
self –
AstBuild
mpa –
MultiPwAff
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- access_from_pw_multi_aff(self, pma)¶
- Parameters:
self –
AstBuild
pma –
PwMultiAff
- Returns:
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)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- call_from_multi_pw_aff(self, mpa)¶
- Parameters:
self –
AstBuild
mpa –
MultiPwAff
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- call_from_pw_multi_aff(self, pma)¶
- Parameters:
self –
AstBuild
pma –
PwMultiAff
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- copy(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- expr_from_pw_aff(self, pa)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- expr_from_set(self, set)¶
-
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)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_schedule_space(self)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- node_from_schedule(self, schedule)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- node_from_schedule_map(self, schedule)¶
- restrict(self, set)¶
-
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_after_each_for(self, fn)¶
- Parameters:
self –
AstBuild
fn – callback(node, build)
- Returns:
tuple: (
AstBuild
, (opaque handle to manage callback lifetime))
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_after_each_mark(self, fn)¶
- Parameters:
self –
AstBuild
fn – callback(node, build)
- Returns:
tuple: (
AstBuild
, (opaque handle to manage callback lifetime))
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_at_each_domain(self, fn)¶
- set_before_each_for(self, fn)¶
- Parameters:
self –
AstBuild
fn – callback(build)
- Returns:
tuple: (
AstBuild
, (opaque handle to manage callback lifetime))
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_before_each_mark(self, fn)¶
- Parameters:
self –
AstBuild
fn – callback(mark, build)
- Returns:
tuple: (
AstBuild
, (opaque handle to manage callback lifetime))
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_create_leaf(self, fn)¶
- Parameters:
self –
AstBuild
fn – callback(build)
- Returns:
tuple: (
AstBuild
, (opaque handle to manage callback lifetime))
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_iterators(self, iterators)¶
-
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)¶
- Parameters:
self –
AstPrintOptions
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- get_ctx(self)¶
- Parameters:
self –
AstPrintOptions
- Returns:
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_print_for(self, print_for)¶
- Parameters:
self –
AstPrintOptions
print_for – callback(p, options, node)
- Returns:
tuple: (
AstPrintOptions
, (opaque handle to manage callback lifetime))
Warning
This function is not part of the officially public isl API. Use at your own risk.
- set_print_user(self, print_user)¶
- Parameters:
self –
AstPrintOptions
print_user – callback(p, options, node)
- Returns:
tuple: (
AstPrintOptions
, (opaque handle to manage callback lifetime))
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¶