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.ABC
Implements 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.ABC
Defines 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.AbstractVariantOperations
Implements 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.AbstractVariantOperations
Implements 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.AbstractVariantOperations
Implements 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:
object
Defines 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