# FSDict
## Design principles
1) Every key of a fsdict must be of type 'str' or 'FunctionType'.
2) A fsdict may not be part of a list.
3) A fsdict may contain other fsdicts.
4) Dictionaries in python are passed by reference; so are fsdicts. By default
an fsdict is always passed by refernece. That is, its values are not copied but
the fsdict is symlinked to the new position.
## Internals
Keys of type 'str' work just as normal dictionary keys. Keys of type
'FunctionType' are used as filters for the keys of an fsdict. So
```python
dictionary[lambda key: "foo" in key]
```
would return a generator which yields the values for keys which contain the
string 'foo'.
Possible value types and how they are handled:
- fsdict - a directory
- 'bytes' type - written to file as is
- any other python object (except for 'bytes') - pickled
Raw data
{
"_id": null,
"home_page": "https://github.com/MNayer/fsdict",
"name": "filesystem-dict",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "dictionary,filesystem",
"author": "MNayer",
"author_email": "marie.nayer@web.de",
"download_url": "https://files.pythonhosted.org/packages/fa/27/8c9a96a3f12002d11d037485b387ae4fc18195fa98c746e7e9e0b2d606e2/filesystem-dict-0.1.15.tar.gz",
"platform": null,
"description": "# FSDict\n\n## Design principles\n1) Every key of a fsdict must be of type 'str' or 'FunctionType'.\n2) A fsdict may not be part of a list.\n3) A fsdict may contain other fsdicts.\n4) Dictionaries in python are passed by reference; so are fsdicts. By default\nan fsdict is always passed by refernece. That is, its values are not copied but\nthe fsdict is symlinked to the new position.\n\n## Internals\nKeys of type 'str' work just as normal dictionary keys. Keys of type\n'FunctionType' are used as filters for the keys of an fsdict. So\n```python\ndictionary[lambda key: \"foo\" in key]\n```\nwould return a generator which yields the values for keys which contain the\nstring 'foo'.\n\nPossible value types and how they are handled:\n- fsdict - a directory\n- 'bytes' type - written to file as is\n- any other python object (except for 'bytes') - pickled\n",
"bugtrack_url": null,
"license": "0BSD",
"summary": "Dictionary like access to the filesystem.",
"version": "0.1.15",
"project_urls": {
"Homepage": "https://github.com/MNayer/fsdict"
},
"split_keywords": [
"dictionary",
"filesystem"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "aa6523fcef670f75e1488913e2a79299908ff9b415597ec240b9e0ca63c48836",
"md5": "48b1231a2b5173ae5f3ccd45ae1b8e17",
"sha256": "f0f1df19cffc307d90159c59ee2976fbc11c1f77ccc69a7ad0be8ebf26a76969"
},
"downloads": -1,
"filename": "filesystem_dict-0.1.15-py3-none-any.whl",
"has_sig": false,
"md5_digest": "48b1231a2b5173ae5f3ccd45ae1b8e17",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 4343,
"upload_time": "2023-06-22T14:44:49",
"upload_time_iso_8601": "2023-06-22T14:44:49.688152Z",
"url": "https://files.pythonhosted.org/packages/aa/65/23fcef670f75e1488913e2a79299908ff9b415597ec240b9e0ca63c48836/filesystem_dict-0.1.15-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fa278c9a96a3f12002d11d037485b387ae4fc18195fa98c746e7e9e0b2d606e2",
"md5": "e1497fca2f7d99eab84097c41a157682",
"sha256": "4db822334bd038ba89a43b1a8d70be2a987264e8f1d6c626762f31f1193edcd4"
},
"downloads": -1,
"filename": "filesystem-dict-0.1.15.tar.gz",
"has_sig": false,
"md5_digest": "e1497fca2f7d99eab84097c41a157682",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3785,
"upload_time": "2023-06-22T14:44:51",
"upload_time_iso_8601": "2023-06-22T14:44:51.023966Z",
"url": "https://files.pythonhosted.org/packages/fa/27/8c9a96a3f12002d11d037485b387ae4fc18195fa98c746e7e9e0b2d606e2/filesystem-dict-0.1.15.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-22 14:44:51",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "MNayer",
"github_project": "fsdict",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "filesystem-dict"
}