Skip to main content

Json raw data to object

Project description

jsontofu.png

Usage

@dataclass
class Data:
    str_data: str
    int_data: int

@dataclass
class DictData:
    str_data: str
    dict_data: Optional[Dict]

@dataclass
class RecursiveData:
    str_data: str
    dict_data: Data

json_data1 = {
    'str_data': 'test',
    'int_data': 123
}

json_data2 = {,
    'str_data': 'test',
    'dict_data': {'key1': 123, 'key2': 456}
}

json_data3 = {,
    'str_data': 'test',
    'dict_data': {'str_data': 'test', 'int_data': 456}
}

print(jsontofu.decode(json_data1, Data)) # Data(str_data="test", int_data=123)

print(jsontofu.decode(json_data2, DictData)) # DictData(str_data="test", dict_data={'key1': 123, 'key2': 456})

print(jsontofu.decode(json_data3, RecursiveData)) # RecursiveData(str_data="test", Data(str_data="test", int_data=456)

Installation

pip install git+git://github.com/rondou/jsontofu.git

or

pipenv install 'git+ssh://git@github.com/rondou/jsontofu.git#egg=jsontofu'

Development

pipenv install
pipenv install -d
pipenv run "pytest -s"

Coverage

pipenv run 'pytest tests --cov=jsontofu'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jsontofu-1.0.0.tar.gz (2.5 kB view details)

Uploaded Source

Built Distribution

jsontofu-1.0.0-py3-none-any.whl (2.3 kB view details)

Uploaded Python 3

File details

Details for the file jsontofu-1.0.0.tar.gz.

File metadata

  • Download URL: jsontofu-1.0.0.tar.gz
  • Upload date:
  • Size: 2.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0 CPython/3.6.10 Darwin/19.5.0

File hashes

Hashes for jsontofu-1.0.0.tar.gz
Algorithm Hash digest
SHA256 282d0043b6db948669aab4fcf61ac1ff6e1a31a5197abfc9c2b2f4fe27249b05
MD5 92a5430b677c46eec8c7bf5f0e17a5e5
BLAKE2b-256 8a549141e323b2f7f95343f2854b8ba0de4581ebdfe6d0516ead53d1c14fd901

See more details on using hashes here.

File details

Details for the file jsontofu-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: jsontofu-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 2.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0 CPython/3.6.10 Darwin/19.5.0

File hashes

Hashes for jsontofu-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 61f0e15a9512a708ba2b78b475f9f5d9194dfe6d12ebd968cb82c5e236afc937
MD5 e37c73b4a3db0793e09579d65b83d06c
BLAKE2b-256 2c4028c15efc074ace3e258a46ac454db97f3b36e9efe2c42e014e2fbd2eccc9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page