python implementation of the redux library
Project description
Python port of redux library
Simple example app:
```
from redux import create_store, actiontypes, frozenbunch
action_types = actiontypes('myapp', 'increment decrement')
def app_reducer(state, action):
if state is None:
return frozenbunch(counter=0)
if action.type == action_types.increment:
return state.copy(counter=state.counter + 1)
elif action.type == action_types.decrement:
return state.copy(counter=state.counter - 1)
return state
store = create_store(app_reducer)
```
The frozenbunch type is an immutable version of the Bunch pattern, whose members can be accessed by item or by attribute. For example:
```
x = frozenbunch(foo=12, bar=7)
x['foo']
x.foo
x['foo'] = 17
x.foo = 17
x = x.copy(bar=17)
```
Simple example app:
```
from redux import create_store, actiontypes, frozenbunch
action_types = actiontypes('myapp', 'increment decrement')
def app_reducer(state, action):
if state is None:
return frozenbunch(counter=0)
if action.type == action_types.increment:
return state.copy(counter=state.counter + 1)
elif action.type == action_types.decrement:
return state.copy(counter=state.counter - 1)
return state
store = create_store(app_reducer)
```
The frozenbunch type is an immutable version of the Bunch pattern, whose members can be accessed by item or by attribute. For example:
```
x = frozenbunch(foo=12, bar=7)
x['foo']
x.foo
x['foo'] = 17
x.foo = 17
x = x.copy(bar=17)
```
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
File details
Details for the file py_redux-0.2.2-py2.py3-none-any.whl
.
File metadata
- Download URL: py_redux-0.2.2-py2.py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6855e8737cf97857fa74a1f39f0a77fc2dee0adb2a8495e517cb2e520231dd3 |
|
MD5 | b5c615607b1fc3bc4f603b6d0a432cb5 |
|
BLAKE2b-256 | c7629f41513b413f4941ff8cbd7cc101c24995b4f609eabefb25fb4e2b407436 |