Reference Guide  2.5.0
psyclone.psyir.nodes.schedule.Schedule Class Reference
Inheritance diagram for psyclone.psyir.nodes.schedule.Schedule:
Collaboration diagram for psyclone.psyir.nodes.schedule.Schedule:

Public Member Functions

def __getitem__ (self, index)
 
def __str__ (self)
 
def gen_code (self, parent)
 
- Public Member Functions inherited from psyclone.psyir.nodes.scoping_node.ScopingNode
def __init__ (self, children=None, parent=None, symbol_table=None)
 
def __eq__ (self, other)
 
def symbol_table (self)
 
- Public Member Functions inherited from psyclone.psyir.nodes.node.Node
def __init__ (self, ast=None, children=None, parent=None, annotations=None)
 
def coloured_name (self, colour=True)
 
def node_str (self, colour=True)
 
def ast (self)
 
def ast_end (self)
 
def ast (self, ast)
 
def ast_end (self, ast_end)
 
def annotations (self)
 
def dag (self, file_name='dag', file_format='svg')
 
def dag_gen (self, graph)
 
def dag_name (self)
 
def args (self)
 
def backward_dependence (self)
 
def forward_dependence (self)
 
def is_valid_location (self, new_node, position="before")
 
def depth (self)
 
def view (self, depth=0, colour=True, indent=" ", _index=None)
 
def addchild (self, child, index=None)
 
def children (self)
 
def children (self, my_children)
 
def parent (self)
 
def siblings (self)
 
def has_constructor_parent (self)
 
def position (self)
 
def abs_position (self)
 
def root (self)
 
def sameParent (self, node_2)
 
def walk (self, my_type, stop_type=None, depth=None)
 
def get_sibling_lists (self, my_type, stop_type=None)
 
def ancestor (self, my_type, excluding=None, include_self=False, limit=None, shared_with=None)
 
def kernels (self)
 
def following (self, routine=True)
 
def preceding (self, reverse=False, routine=True)
 
def immediately_precedes (self, node_2)
 
def immediately_follows (self, node_1)
 
def coded_kernels (self)
 
def loops (self)
 
def reductions (self, reprod=None)
 
def is_openmp_parallel (self)
 
def lower_to_language_level (self)
 
def reference_accesses (self, var_accesses)
 
def scope (self)
 
def replace_with (self, node, keep_name_in_context=True)
 
def pop_all_children (self)
 
def detach (self)
 
def copy (self)
 
def validate_global_constraints (self)
 
def debug_string (self)
 
def origin_string (self)
 
def update_signal (self)
 
def path_from (self, ancestor)
 

Additional Inherited Members

- Public Attributes inherited from psyclone.psyir.nodes.scoping_node.ScopingNode
 symbol_table
 
- Public Attributes inherited from psyclone.psyir.nodes.node.Node
 position
 
- Static Public Attributes inherited from psyclone.psyir.nodes.node.Node
int START_DEPTH = 0
 
int START_POSITION = 0
 
 valid_annotations = tuple()
 

Detailed Description

 Stores schedule information for a sequence of statements (supplied
as a list of children).

Definition at line 45 of file schedule.py.

Member Function Documentation

◆ __getitem__()

def psyclone.psyir.nodes.schedule.Schedule.__getitem__ (   self,
  index 
)
Overload the subscript notation ([int]) to access specific statements
in the Schedule.

:param int index: index of the statement to access.
:returns: statement in a given position in the Schedule sequence.
:rtype: :py:class:`psyclone.psyir.nodes.Node`

Definition at line 69 of file schedule.py.

69  def __getitem__(self, index):
70  '''
71  Overload the subscript notation ([int]) to access specific statements
72  in the Schedule.
73 
74  :param int index: index of the statement to access.
75  :returns: statement in a given position in the Schedule sequence.
76  :rtype: :py:class:`psyclone.psyir.nodes.Node`
77  '''
78  return self._children[index]
79 

References psyclone.f2pygen.BaseGen._children, psyclone.psyir.nodes.node.Node._children, psyclone.psyir.nodes.omp_directives.OMPParallelDirective._children, and psyclone.psyir.nodes.node.Node.coloured_name().

Here is the call graph for this function:

◆ gen_code()

def psyclone.psyir.nodes.schedule.Schedule.gen_code (   self,
  parent 
)
A Schedule does not have any direct Fortran representation. We just
call gen_code() for all of its children.

:param parent: node in the f2pygen AST to which to add content.
:type parent: :py:class:`psyclone.f2pygen.BaseGen`

Definition at line 87 of file schedule.py.

87  def gen_code(self, parent):
88  '''
89  A Schedule does not have any direct Fortran representation. We just
90  call gen_code() for all of its children.
91 
92  :param parent: node in the f2pygen AST to which to add content.
93  :type parent: :py:class:`psyclone.f2pygen.BaseGen`
94  '''
95  for child in self.children:
96  child.gen_code(parent)
97 
98 
99 # For AutoAPI documentation generation

References psyclone.f2pygen.BaseGen.children(), psyclone.psyGen.InlinedKern.children, and psyclone.psyir.nodes.node.Node.children().

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following file: