pip_services3_expressions.variants package
Submodules
- pip_services3_expressions.variants.AbstractVariantOperations module
- pip_services3_expressions.variants.IVariantOperations module
- pip_services3_expressions.variants.TypeSafeVariantOperations module
- pip_services3_expressions.variants.TypeUnsafeVariantOperations module
- pip_services3_expressions.variants.Variant module
- pip_services3_expressions.variants.VariantType module
Module contents
-
class
pip_services3_expressions.variants.AbstractVariantOperations Bases:
pip_services3_expressions.variants.IVariantOperations.IVariantOperations,abc.ABCImplements an abstract variant operations manager object.
-
add(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘+’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
and_(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs AND operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
abstract
convert(value: pip_services3_expressions.variants.Variant.Variant, new_type: pip_services3_expressions.variants.VariantType.VariantType) → pip_services3_expressions.variants.Variant.Variant Converts variant to specified type
- Parameters
value – A variant value to be converted.
new_type – A type of object to be returned.
- Returns
A converted Variant value.
-
div(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘/’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
equal(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘=’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
get_element(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs [] operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
in_(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs IN operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
less(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘<’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
less_equal(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘<=’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
lsh(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘<<’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
mod(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘%’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
more(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘>’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
more_equal(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘>=’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
mul(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘*’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
negative(value: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs unary ‘-’ operation for a variant.
- Parameters
value – The operand for this operation.
- Returns
A result variant object.
-
not_(value: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs NOT operation for a variant.
- Parameters
value – The operand for this operation.
- Returns
A result variant object.
-
not_equal(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘<>’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
or_(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs OR operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
pow(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘^’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
rsh(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘>>’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
sub(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘-’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
xor(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs XOR operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
-
class
pip_services3_expressions.variants.IVariantOperations Bases:
abc.ABCDefines an interface for variant operations manager.
-
add(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘+’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
and_(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs AND operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
convert(value: pip_services3_expressions.variants.Variant.Variant, new_type: pip_services3_expressions.variants.VariantType.VariantType) → pip_services3_expressions.variants.Variant.Variant Converts variant to specified type
- Parameters
value – A variant value to be converted.
new_type – A type of object to be returned.
- Returns
A converted Variant value.
-
div(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘/’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
equal(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘=’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
get_element(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs [] operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
in_(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs IN operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
less(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘>’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
less_equal(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘>=’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
lsh(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs << operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
mod(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘%’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
more(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘<’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
more_equal(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘<=’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
mul(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘*’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
negative(value: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs unary ‘-’ operation for a variant.
- Parameters
value – The operand for this operation.
- Returns
A result variant object.
-
not_(value: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs NOT operation for two variants.
- Parameters
value – The operand for this operation.
- Returns
A result variant object.
-
not_equal(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘<>’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
or_(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs OR operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
pow(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘^’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
rsh(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs >> operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
sub(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs ‘-’ operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
xor(value1: pip_services3_expressions.variants.Variant.Variant, value2: pip_services3_expressions.variants.Variant.Variant) → pip_services3_expressions.variants.Variant.Variant Performs XOR operation for two variants.
- Parameters
value1 – The first operand for this operation.
value2 – The second operand for this operation.
- Returns
A result variant object.
-
-
class
pip_services3_expressions.variants.TypeSafeVariantOperations Bases:
pip_services3_expressions.variants.AbstractVariantOperations.AbstractVariantOperationsImplements a strongly typed (type safe) variant operations manager object.
-
convert(value: pip_services3_expressions.variants.Variant.Variant, new_type: pip_services3_expressions.variants.VariantType.VariantType) → pip_services3_expressions.variants.Variant.Variant Converts variant to specified type
- Parameters
value – A variant value to be converted.
new_type – A type of object to be returned.
- Returns
A converted Variant value.
-
-
class
pip_services3_expressions.variants.TypeUnsafeVariantOperations Bases:
pip_services3_expressions.variants.AbstractVariantOperations.AbstractVariantOperationsImplements a type unsafe variant operations manager object.
-
convert(value: pip_services3_expressions.variants.Variant.Variant, new_type: pip_services3_expressions.variants.VariantType.VariantType) → pip_services3_expressions.variants.Variant.Variant Converts variant to specified type
- Parameters
value – A variant value to be converted.
new_type – A type of object to be returned.
- Returns
A converted Variant value.
-
-
class
pip_services3_expressions.variants.TypeUnsafeVariantOperations Bases:
pip_services3_expressions.variants.AbstractVariantOperations.AbstractVariantOperationsImplements a type unsafe variant operations manager object.
-
convert(value: pip_services3_expressions.variants.Variant.Variant, new_type: pip_services3_expressions.variants.VariantType.VariantType) → pip_services3_expressions.variants.Variant.Variant Converts variant to specified type
- Parameters
value – A variant value to be converted.
new_type – A type of object to be returned.
- Returns
A converted Variant value.
-
-
class
pip_services3_expressions.variants.Variant(value: Any = None) Bases:
objectDefines container for variant values.
-
static
Empty() → pip_services3_expressions.variants.Variant.Variant
-
property
as_array Gets variant value as variant array
-
property
as_boolean Gets variant value as boolean
-
property
as_datetime Gets variant value as datetime
-
property
as_double Gets variant value as double
-
property
as_float Gets variant value as float
-
property
as_integer Sets variant value as integer
-
property
as_long Gets variant value as long
- Returns
number value
-
property
as_object Gets variant value as Object
-
property
as_string Gets variant value as string
-
property
as_time_span Gets variant value as time span
-
assign(value: pip_services3_expressions.variants.Variant.Variant) Assigns a new value to this object.
- Parameters
value – A new value to be assigned.
-
clear() Clears this object and assigns a VariantType.Null type.
-
clone() → pip_services3_expressions.variants.Variant.Variant Cloning the variant value
- Returns
The cloned value of this variant
-
equals(obj: Any) → bool Compares this object to the specified one.
- Parameters
obj – An object to be compared.
- Returns
True if objects are equal.
-
static
from_array(value: Iterable) Creates a new variant from Array value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_boolean(value: bool) Creates a new variant from Boolean value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_datetime(value: datetime.datetime) Creates a new variant from DateTime value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_double(value: float) Creates a new variant from Double value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_float(value: float) Creates a new variant from Float value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_integer(value: int) Creates a new variant from Integer value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_long(value: int) Creates a new variant from Long value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_object(value: Any) Creates a new variant from Object value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_string(value: str) Creates a new variant from String value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
static
from_time_span(value: int) Creates a new variant from TimeSpan value.
- Parameters
value – a variant value.
- Returns
a created variant object.
-
get_by_index(index: int) Gets an array element by its index.
- Parameters
index – an element index
- Returns
a requested array element
-
property
length Gets length of the array
- Returns
The length of the array or 0
-
set_by_index(index: int, element: pip_services3_expressions.variants.Variant.Variant) Sets an array element by its index.
- Parameters
index – an element index
element – an element value
-
property
type Gets a type of the variant value
- Returns
the variant value type
-
static