A collection of Value Objects to save time by generalizing data type and format validations.
Project description
Python Value-Objects
A collection of Value Objects to save time by generalizing types and format validations.
Value-objects
Numeric value-objects
Int
Integer numbers without a fractional component that don't support decimal points.
from pyvalueobjects import Int
# Creation
my_integer = Int(9)
# Getting raw value
my_integer.value() # returns -> 9
Nullable Int
Integer numbers and None.
from pyvalueobjects import NullableInt
# Creation
my_integer = NullableInt(9)
# Creating from None
my_nullable_integer = NullableInt(None)
# Getting raw value
my_integer.value() # returns -> 9
my_nullable_integer.value() # returns -> None
String value-objects
String
from pyvalueobjects import String
# Creation
my_str = String('potato')
# Getting raw value
my_str.value() # returns -> 'potato'
Nullable String
from pyvalueobjects import NullableString
# Creation
my_str = NullableString('potato')
# Getting raw value
my_str.value() # returns -> 'potato'
# Creation
my_nullable_str = NullableString(None)
# Getting raw value
my_nullable_str.value() # returns -> None
Non Empty String
from pyvalueobjects import NonEmptyString
# Creation
my_str = NonEmptyString('potato')
# Getting raw value
my_str.value() # returns -> 'potato'
# Creation
my_str2 = NonEmptyString('') # raises error
Nullable non Empty String
from pyvalueobjects import NullableNonEmptyString
# Creation
my_str = NullableNonEmptyString('potato')
# Getting raw value
my_str.value() # returns -> 'potato'
# Creation
my_str2 = NullableNonEmptyString(None)
# Getting raw value
my_str2.value() # returns -> None
# Creation
my_str3 = NullableNonEmptyString('') # raises error
Uuid4
from pyvalueobjects import Uuid4
# Creation
my_uuid4 = Uuid4('6c7add12-bf35-459e-a6c5-3178a2a33011')
# Getting raw value
my_uuid4.value() # returns -> '6c7add12-bf35-459e-a6c5-3178a2a33011'
Nullable Uuid4
from pyvalueobjects import NullableUuid4
# Creation
my_uuid4 = NullableUuid4('6c7add12-bf35-459e-a6c5-3178a2a33011')
my_null_uuid4 = NullableUuid4(None)
# Getting raw value
my_uuid4.value() # returns -> '6c7add12-bf35-459e-a6c5-3178a2a33011'
my_null_uuid4.value() # returns -> 'None'
Date value-objects
ISO Date
from pyvalueobjects import IsoDate
# Creation
my_date = IsoDate('2023-08-15T04:55:12.076Z')
# Getting raw value
my_date.value() # returns -> '2023-08-15T04:55:12.076Z'
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyvalueobjects-0.20.0.tar.gz
(6.6 kB
view hashes)
Built Distribution
Close
Hashes for pyvalueobjects-0.20.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65f0bfd4ea346cc0714ff94231c7ea29c2b1d31686865dbf0dc784b5cedead74 |
|
MD5 | 75e89b7e4d888349ca5e179c45a652ce |
|
BLAKE2b-256 | 5f08947d7f4a32489f120b93877d9df3c6f3b7071a264350d45428d3de68560c |