Reference Guide  2.5.0
psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg Class Reference

Public Member Functions

def __init__ (self, meta_arg, parent)
 
def fortran_string (self)
 
def access (self)
 
def access (self, value)
 
def datatype (self)
 
def datatype (self, value)
 
def form (self)
 
def form (self, value)
 

Detailed Description

Internal class to capture Kernel metadata information for
a scalar argument.

:param meta_arg: an fparser2 tree representation of the metadata.
:type meta_arg: :py:class:`fparser.two.Fortran2003.Part_Ref`

:param parent: a KernelMetadataSymbol instance that captures \
    other parts of the metadata and references this instance.
:type parent: :py:class`psyclone.psyir.common.kernel. \
    KernelMetadataSymbol`

:raises ParseError: if the metadata does not contain three \
    arguments.

Definition at line 903 of file psyir.py.

Member Function Documentation

◆ access() [1/2]

def psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.access (   self)
:returns: the access descriptor for this scalar argument.
:rtype: str

Definition at line 975 of file psyir.py.

975  def access(self):
976  '''
977  :returns: the access descriptor for this scalar argument.
978  :rtype: str
979  '''
980  return self._access
981 

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.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.access (   self,
  value 
)

◆ datatype() [1/2]

def psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.datatype (   self)
:returns: the datatype of the scalar argument.
:rtype: str

Definition at line 1009 of file psyir.py.

1009  def datatype(self):
1010  '''
1011  :returns: the datatype of the scalar argument.
1012  :rtype: str
1013  '''
1014  return self._datatype
1015 

References psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg._datatype, psyclone.domain.lfric.kernel.common_meta_arg_metadata.CommonMetaArgMetadata._datatype, psyclone.domain.lfric.lfric_builtins.LFRicBuiltIn._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAPlusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAPlusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXPlusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXPlusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAXPlusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXPlusAYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAMinusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAMinusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXMinusAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXMinusAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXMinusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXMinusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXMinusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicATimesXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncATimesXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXDividebyYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXDividebyYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXDividebyAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXDividebyAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicADividebyXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncADividebyXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXPowrealAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXPowintNKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSetvalCKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSetvalXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSetvalRandomKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXInnerproductYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXInnerproductXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSumXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSignXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicMaxAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncMaxAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicMinAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncMinAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicRealToIntXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicRealToRealXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntAPlusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncAPlusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntAMinusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncAMinusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntXMinusAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncXMinusAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntATimesXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncATimesXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntSetvalCKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntSetvalXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntSignXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntMaxAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncMaxAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntMinAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncMinAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntToRealXKern._datatype, psyclone.parse.algorithm.Arg._datatype, psyclone.psyir.nodes.literal.Literal._datatype, psyclone.psyir.symbols.data_type_symbol.DataTypeSymbol._datatype, psyclone.psyir.symbols.datatypes.ArrayType._datatype, and psyclone.psyir.symbols.typed_symbol.TypedSymbol._datatype.

Here is the caller graph for this function:

◆ datatype() [2/2]

def psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.datatype (   self,
  value 
)
:param str value: set the scalar datatype to the specified \
    value.

Definition at line 1017 of file psyir.py.

1017  def datatype(self, value):
1018  '''
1019  :param str value: set the scalar datatype to the specified \
1020  value.
1021  '''
1022  self._validate_datatype(value)
1023  self._datatype = value
1024 

References psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg._datatype, psyclone.domain.lfric.kernel.common_meta_arg_metadata.CommonMetaArgMetadata._datatype, psyclone.domain.lfric.lfric_builtins.LFRicBuiltIn._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAPlusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAPlusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXPlusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXPlusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAXPlusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXPlusAYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAMinusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAMinusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXMinusAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXMinusAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXMinusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXMinusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicAXMinusBYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncAXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicATimesXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncATimesXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXDividebyYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXDividebyYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXDividebyAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXDividebyAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicADividebyXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncADividebyXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXPowrealAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncXPowintNKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSetvalCKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSetvalXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSetvalRandomKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXInnerproductYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicXInnerproductXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSumXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicSignXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicMaxAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncMaxAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicMinAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIncMinAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicRealToIntXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicRealToRealXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncXPlusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntAPlusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncAPlusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncXMinusYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntAMinusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncAMinusXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntXMinusAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncXMinusAKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncXTimesYKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntATimesXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncATimesXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntSetvalCKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntSetvalXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntSignXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntMaxAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncMaxAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntMinAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntIncMinAXKern._datatype, psyclone.domain.lfric.lfric_builtins.LFRicIntToRealXKern._datatype, psyclone.parse.algorithm.Arg._datatype, psyclone.psyir.nodes.literal.Literal._datatype, psyclone.psyir.symbols.data_type_symbol.DataTypeSymbol._datatype, psyclone.psyir.symbols.datatypes.ArrayType._datatype, psyclone.psyir.symbols.typed_symbol.TypedSymbol._datatype, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg._validate_datatype(), and psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.datatype().

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

◆ form() [1/2]

def psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.form (   self)
:returns: the form of access for the scalar (pointwise ...).
:rtype: str

Definition at line 1042 of file psyir.py.

1042  def form(self):
1043  '''
1044  :returns: the form of access for the scalar (pointwise ...).
1045  :rtype: str
1046  '''
1047  return self._form
1048 

References psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.FieldArg._form, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg._form, psyclone.parse.algorithm.Arg._form, and psyclone.psyGen.Argument._form.

Here is the caller graph for this function:

◆ form() [2/2]

def psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.form (   self,
  value 
)
:param str value: set the form of access for the scalar to \
    the specified value.

Definition at line 1050 of file psyir.py.

1050  def form(self, value):
1051  '''
1052  :param str value: set the form of access for the scalar to \
1053  the specified value.
1054  '''
1055  self._validate_form(value)
1056  self._form = value
1057 
1058 

References psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.FieldArg._form, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg._form, psyclone.parse.algorithm.Arg._form, psyclone.psyGen.Argument._form, psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.FieldArg._validate_form(), psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg._validate_form(), and psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.form().

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

◆ fortran_string()

def psyclone.domain.gocean.kernel.psyir.GOceanKernelMetadata.ScalarArg.fortran_string (   self)
:returns: the metadata represented by this class as a \
    Fortran string.
:rtype: str

Definition at line 950 of file psyir.py.

950  def fortran_string(self):
951  '''
952  :returns: the metadata represented by this class as a \
953  Fortran string.
954  :rtype: str
955  '''
956  return f"go_arg({self.access}, {self.datatype}, {self.form})"
957 
Here is the caller graph for this function:

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