Special argument class to hold steering information.
More...
|
def | value (self) |
| Return argument value. More...
|
|
def | dumpvalue (self) |
|
def | prodsysDescription (self) |
|
def | value (self, value) |
|
def | returnMyValue (self, name=None, substep=None, first=False, exe=None) |
| Return the value of this substep arg for an executor with the given parameters. More...
|
|
def | isRunarg (self) |
| Return runarg status. More...
|
|
def | name (self) |
| Name getter. More...
|
|
def | name (self, value) |
| Name setter. More...
|
|
def | __str__ (self) |
| String conversion of our value. More...
|
|
def | __repr__ (self) |
| Repr conversion of our value. More...
|
|
def | __eq__ (self, other) |
| Comparison is based on value attribute. More...
|
|
def | __nq__ (self, other) |
|
def | __lt__ (self, other) |
|
def | __gt__ (self, other) |
|
Special argument class to hold steering information.
Definition at line 2317 of file trfArgClasses.py.
◆ __eq__()
def python.trfArgClasses.argument.__eq__ |
( |
|
self, |
|
|
|
other |
|
) |
| |
|
inherited |
Comparison is based on value attribute.
Definition at line 161 of file trfArgClasses.py.
161 def __eq__(self,other):
162 return self.value == other.value
◆ __gt__()
def python.trfArgClasses.argument.__gt__ |
( |
|
self, |
|
|
|
other |
|
) |
| |
|
inherited |
Definition at line 170 of file trfArgClasses.py.
170 def __gt__(self, other):
171 return self.value > other.value
◆ __lt__()
def python.trfArgClasses.argument.__lt__ |
( |
|
self, |
|
|
|
other |
|
) |
| |
|
inherited |
Definition at line 167 of file trfArgClasses.py.
167 def __lt__(self, other):
168 return self.value < other.value
◆ __nq__()
def python.trfArgClasses.argument.__nq__ |
( |
|
self, |
|
|
|
other |
|
) |
| |
|
inherited |
Definition at line 164 of file trfArgClasses.py.
164 def __nq__(self, other):
165 return self.value != other.value
◆ __repr__()
def python.trfArgClasses.argument.__repr__ |
( |
|
self | ) |
|
|
inherited |
◆ __str__()
def python.trfArgClasses.argument.__str__ |
( |
|
self | ) |
|
|
inherited |
◆ _parseSetterString()
def python.trfArgClasses.argSubstepSteering._parseSetterString |
( |
|
self, |
|
|
|
string |
|
) |
| |
|
private |
Definition at line 2404 of file trfArgClasses.py.
2404 def _parseSetterString(self, string):
2405 if string
in argSubstepSteering.steeringAlises:
2406 return argSubstepSteering.steeringAlises[string]
◆ _parseSteeringString()
def python.trfArgClasses.argSubstepSteering._parseSteeringString |
( |
|
self, |
|
|
|
ivalue |
|
) |
| |
|
private |
Definition at line 2408 of file trfArgClasses.py.
2408 def _parseSteeringString(self, ivalue):
2410 for subvalue
in ivalue.split(
','):
2411 matchedParts = re.match(
r'(in|out)(\+|\-)([A-Z_]+)$', subvalue)
2412 if not matchedParts:
2413 raise trfExceptions.TransformArgException(trfExit.nameToCode(
'TRF_ARG_CONV_FAIL'),
2414 'Failed to convert string {0!s} to argSubstepSteering'.
format(subvalue))
2415 retvalue.append((matchedParts.group(1), matchedParts.group(2), matchedParts.group(3)))
◆ _parseStringAsSubstep()
def python.trfArgClasses.argSubstep._parseStringAsSubstep |
( |
|
self, |
|
|
|
string |
|
) |
| |
|
privateinherited |
Parse a string for substep:value format.
If the string matches the substep specifier regexp then we return the two parts; if not then the substep is returned as self._defaultSubstep
, with the entire string passed back as the value
- Parameters
-
string | The string which should be parsed |
Reimplemented in python.trfArgClasses.argSubstepList.
Definition at line 1987 of file trfArgClasses.py.
1987 def _parseStringAsSubstep(self, string):
1988 subStepMatch = re.match(
r'([a-zA-Z0-9,]+)' + self._separator +
r'(.*)', string)
1991 subStep = subStepMatch.group(1).
split(
',')
1992 subStepValue = subStepMatch.group(2)
1994 subStep = [self._defaultSubstep]
1995 subStepValue = string
1996 msg.debug(
'Parsed {0} as substep {1}, argument {2}'.
format(string, subStep, subStepValue))
1997 for step
in subStep:
1998 subStepList.append((step, subStepValue))
◆ dumpvalue()
def python.trfArgClasses.argSubstepSteering.dumpvalue |
( |
|
self | ) |
|
Definition at line 2346 of file trfArgClasses.py.
2346 def dumpvalue(self):
2347 return self._dumpvalue
◆ isRunarg()
def python.trfArgClasses.argument.isRunarg |
( |
|
self | ) |
|
|
inherited |
◆ name() [1/2]
def python.trfArgClasses.argument.name |
( |
|
self | ) |
|
|
inherited |
◆ name() [2/2]
def python.trfArgClasses.argument.name |
( |
|
self, |
|
|
|
value |
|
) |
| |
|
inherited |
◆ prodsysDescription()
def python.trfArgClasses.argSubstepSteering.prodsysDescription |
( |
|
self | ) |
|
Reimplemented from python.trfArgClasses.argSubstep.
Definition at line 2350 of file trfArgClasses.py.
2350 def prodsysDescription(self):
2351 desc = {
'type':
'substep',
'substeptype':
'steering',
'listtype':
'str',
'separator': self._separator,
2352 'default': self._defaultSubstep}
◆ returnMyValue()
def python.trfArgClasses.argSubstep.returnMyValue |
( |
|
self, |
|
|
|
name = None , |
|
|
|
substep = None , |
|
|
|
first = False , |
|
|
|
exe = None |
|
) |
| |
|
inherited |
Return the value of this substep arg for an executor with the given parameters.
- Parameters
-
name | Executor name |
substep | Executor substep nickname |
first | Boolean flag set true if this is the first executor in the chain |
exe | Executor instance, from which 'name', 'substep' and 'first' can be taken.
|
Definition at line 2007 of file trfArgClasses.py.
2007 def returnMyValue(self, name=None, substep=None, first=False, exe=None):
2010 substep = exe.substep
2011 first = exe.conf.firstExecutor
2017 if name
in self._value:
2018 value = self._value[name]
2019 elif substep
in self._value:
2020 value = self._value[substep]
2021 elif first
and 'first' in self._value:
2022 value = self._value[
'first']
2023 elif 'default' in self._value:
2024 value = self._value[
'default']
2034 if 'all' in self._value:
2036 value = self._value[
'all']
2037 elif isinstance(value, list):
2038 value = self._value[
'all'] + value
2040 msg.debug(
'From substep argument {myvalue} picked value "{value}" for {name}, {substep}, first={first}'.
format(myvalue=self._value, value=value, name=name, substep=substep, first=first))
◆ value() [1/2]
def python.trfArgClasses.argSubstepSteering.value |
( |
|
self | ) |
|
◆ value() [2/2]
def python.trfArgClasses.argSubstepSteering.value |
( |
|
self, |
|
|
|
value |
|
) |
| |
For strings passed to the setter we expect the format to be substep:{in/out}{+/-}DATATYPE
or to be a steering alias, which is then expanded to the more complex format. This is then cast into a dictionary of tuples {substep: [('in/out', '+/-', DATATYPE), ...], ...}
Reimplemented from python.trfArgClasses.argSubstep.
Definition at line 2359 of file trfArgClasses.py.
2359 def value(self, value):
2360 msg.debug(
'Attempting to set argSubstepSteering from {0!s} (type {1})'.
format(value,
type(value)))
2363 self._dumpvalue = [
""]
2364 elif isinstance(value, dict):
2366 for k, v
in value.items():
2367 if not isinstance(k, str)
or not isinstance(v, list):
2368 raise trfExceptions.TransformArgException(trfExit.nameToCode(
'TRF_ARG_CONV_FAIL'),
2369 'Failed to convert dict {0!s} to argSubstepSteering'.
format(value))
2371 if not isinstance(subv, (list, tuple))
or len(subv) != 3
or subv[0]
not in (
'in',
'out')
or subv[1]
not in (
'+',
'-'):
2372 raise trfExceptions.TransformArgException(trfExit.nameToCode(
'TRF_ARG_CONV_FAIL'),
2373 'Failed to convert dict {0!s} to argSubstepSteering'.
format(value))
2379 self._dumpvalue = getattr(self,
"_dumpvalue", value)
2380 elif isinstance(value, (str, list, tuple)):
2381 if isinstance(value, str):
2383 self._dumpvalue = getattr(self,
"_dumpvalue", value)
2387 if not isinstance(item, str):
2388 raise trfExceptions.TransformArgException(trfExit.nameToCode(
'TRF_ARG_CONV_FAIL'),
2389 'Failed to convert list item {0!s} to substep (should be a string)'.
format(item))
2390 if item
in argSubstepSteering.steeringAlises:
2391 msg.debug(
"Found value {0} in steeringAlises ({1})".
format(item, argSubstepSteering.steeringAlises[item]))
2392 for substep, steerlist
in argSubstepSteering.steeringAlises[item].
items():
2393 if substep
in self._value:
2394 self._value[substep].
extend(steerlist)
2396 self._value[substep] = steerlist
2398 subStepList = self._parseStringAsSubstep(item)
2399 self._value.update(dict([(subStep[0], self._parseSteeringString(subStep[1]))
for subStep
in subStepList]))
2401 raise trfExceptions.TransformArgException(trfExit.nameToCode(
'TRF_ARG_CONV_FAIL'),
2402 'Setter value {0!s} (type {1}) for substep argument cannot be parsed'.
format(value,
type(value)))
◆ _defaultSubstep
python.trfArgClasses.argSubstep._defaultSubstep |
|
privateinherited |
◆ _dumpvalue
python.trfArgClasses.argSubstepSteering._dumpvalue |
|
private |
◆ _name
python.trfArgClasses.argument._name |
|
privateinherited |
◆ _runarg
python.trfArgClasses.argument._runarg |
|
privateinherited |
◆ _separator
python.trfArgClasses.argSubstep._separator |
|
privateinherited |
◆ _value
python.trfArgClasses.argSubstepSteering._value |
|
private |
◆ steeringAlises
python.trfArgClasses.argSubstepSteering.steeringAlises |
|
static |
◆ value
python.trfArgClasses.argument.value |
|
inherited |
- Note
- We have a default of None here, but all derived classes should definitely have their own value setter and translate this value to something sensible for their underlying value type. N.B. As most argument classes use this default constructor it must call the
@value
.setter function!
Definition at line 118 of file trfArgClasses.py.
The documentation for this class was generated from the following file: