Reference Guide  2.5.0
psyclone.psyir.symbols.interfaces.ArgumentInterface Class Reference
Inheritance diagram for psyclone.psyir.symbols.interfaces.ArgumentInterface:
Collaboration diagram for psyclone.psyir.symbols.interfaces.ArgumentInterface:

Classes

class  Access
 

Public Member Functions

def __init__ (self, access=None)
 
def access (self)
 
def access (self, value)
 
def __str__ (self)
 
def copy (self)
 

Public Attributes

 access
 

Detailed Description

Captures the interface to a Symbol that is accessed as a routine
argument.

:param access: specifies how the argument is used in the Schedule
:type access: :py:class:`psyclone.psyir.symbols.ArgumentInterface.Access`

Definition at line 198 of file interfaces.py.

Member Function Documentation

◆ access() [1/2]

def psyclone.psyir.symbols.interfaces.ArgumentInterface.access (   self)
:returns: the access-type for this argument.
:rtype: :py:class:`psyclone.psyir.symbols.ArgumentInterface.Access`

Definition at line 235 of file interfaces.py.

235  def access(self):
236  '''
237  :returns: the access-type for this argument.
238  :rtype: :py:class:`psyclone.psyir.symbols.ArgumentInterface.Access`
239  '''
240  return self._access
241 

References psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.GridArg._access, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.FieldArg._access, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg._access, psyclone.domain.lfric.kernel.common_meta_arg_metadata.CommonMetaArgMetadata._access, psyclone.parse.kernel.Descriptor._access, psyclone.psyGen.Argument._access, and psyclone.psyir.symbols.interfaces.ArgumentInterface._access.

Here is the caller graph for this function:

◆ access() [2/2]

def psyclone.psyir.symbols.interfaces.ArgumentInterface.access (   self,
  value 
)
:param value: the new access type.
:type value: :py:class:`psyclon.psyir.symbols.ArgumentInterface.Access`

:raises TypeError: if the supplied value is not an \
    ArgumentInterface.Access

Definition at line 243 of file interfaces.py.

243  def access(self, value):
244  '''
245  :param value: the new access type.
246  :type value: :py:class:`psyclon.psyir.symbols.ArgumentInterface.Access`
247 
248  :raises TypeError: if the supplied value is not an \
249  ArgumentInterface.Access
250  '''
251  if not isinstance(value, ArgumentInterface.Access):
252  raise TypeError(
253  f"SymbolInterface.access must be an 'ArgumentInterface.Access'"
254  f" but got '{type(value).__name__}'.")
255  self._access = value
256 

References psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.GridArg._access, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.FieldArg._access, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg._access, psyclone.domain.lfric.kernel.common_meta_arg_metadata.CommonMetaArgMetadata._access, psyclone.parse.kernel.Descriptor._access, psyclone.psyGen.Argument._access, and psyclone.psyir.symbols.interfaces.ArgumentInterface._access.

Here is the caller graph for this function:

◆ copy()

def psyclone.psyir.symbols.interfaces.ArgumentInterface.copy (   self)
:returns: a copy of this object.
:rtype: :py:class:`psyclone.psyir.symbol.SymbolInterface`

Reimplemented from psyclone.psyir.symbols.interfaces.SymbolInterface.

Definition at line 260 of file interfaces.py.

260  def copy(self):
261  '''
262  :returns: a copy of this object.
263  :rtype: :py:class:`psyclone.psyir.symbol.SymbolInterface`
264  '''
265  return self.__class__(access=self.access)
266 
267 

References psyclone.psyir.symbols.symbol.Symbol.__class__, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.GridArg.access, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.FieldArg.access, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.access(), psyclone.domain.lfric.kernel.common_meta_arg_metadata.CommonMetaArgMetadata.access, psyclone.dynamo0p3.DynKernelArgument.access, psyclone.parse.kernel.Descriptor.access(), psyclone.psyGen.Argument.access(), and psyclone.psyir.symbols.interfaces.ArgumentInterface.access.

Here is the call graph for this function:

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