buildz 0.6.53__tar.gz → 0.6.55__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {buildz-0.6.53/buildz.egg-info → buildz-0.6.55}/PKG-INFO +1 -1
- buildz-0.6.55/buildz/argz/argz.py +232 -0
- buildz-0.6.55/buildz/argz/callz.py +47 -0
- buildz-0.6.55/buildz/argz/conf_argz.py +118 -0
- buildz-0.6.55/buildz/argz/conf_callz.py +136 -0
- buildz-0.6.55/buildz/argz/evalx.py +21 -0
- buildz-0.6.55/buildz/argz/init.py +7 -0
- buildz-0.6.55/buildz/argz/test.py +29 -0
- buildz-0.6.55/buildz/argz/test_call.py +63 -0
- buildz-0.6.55/buildz/argz_bk/tests/conf.js +34 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/evalz/evalz.py +1 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/evalz/res/default.js +1 -1
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf/conf.py +41 -5
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf/unit.py +40 -10
- buildz-0.6.55/buildz/iocz/conf_deal/deal.py +14 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf_deal/env.py +1 -1
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/init.py +2 -1
- buildz-0.6.55/buildz/iocz/ioc/__init__.py +2 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/datas.py +1 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/envs.py +9 -1
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/tdata.py +18 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/vars.py +1 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/test/test.py +5 -1
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/wrap/base.py +2 -1
- buildz-0.6.55/buildz/iocz/wrap/default_wraps.py +14 -0
- buildz-0.6.55/buildz/iocz/wrap/env.py +6 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/wrap/wraps.py +9 -0
- {buildz-0.6.53 → buildz-0.6.55/buildz.egg-info}/PKG-INFO +1 -1
- {buildz-0.6.53 → buildz-0.6.55}/buildz.egg-info/SOURCES.txt +14 -4
- {buildz-0.6.53 → buildz-0.6.55}/setup.py +1 -1
- buildz-0.6.53/buildz/argz/tests/conf.js +0 -31
- buildz-0.6.53/buildz/iocz/conf_deal/deal.py +0 -14
- buildz-0.6.53/buildz/iocz/wrap/default_wraps.py +0 -9
- {buildz-0.6.53 → buildz-0.6.55}/LICENSE +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/MANIFEST.in +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/README.md +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/__main__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/argx.py +0 -0
- {buildz-0.6.53/buildz/iocz/ioc → buildz-0.6.55/buildz/argz}/__init__.py +0 -0
- {buildz-0.6.53/buildz/argz → buildz-0.6.55/buildz/argz_bk}/__init__.py +0 -0
- {buildz-0.6.53/buildz/argz → buildz-0.6.55/buildz/argz_bk}/argz.py +0 -0
- {buildz-0.6.53/buildz/argz → buildz-0.6.55/buildz/argz_bk}/build.py +0 -0
- {buildz-0.6.53/buildz/argz → buildz-0.6.55/buildz/argz_bk}/callz.py +0 -0
- {buildz-0.6.53/buildz/argz → buildz-0.6.55/buildz/argz_bk}/evalx.py +0 -0
- {buildz-0.6.53/buildz/argz → buildz-0.6.55/buildz/argz_bk}/test.py +0 -0
- {buildz-0.6.53/buildz/argz → buildz-0.6.55/buildz/argz_bk}/test_obj.py +0 -0
- {buildz-0.6.53/buildz/argz → buildz-0.6.55/buildz/argz_bk}/testx.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/cache.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/config.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/dbs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/deal.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/deal_list.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/deal_type.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/defs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/factory.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/init.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/log.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/request.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/run.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/save.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/res/cache/cache.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/res/config/base.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/res/config/config.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/res/data/fp.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/res/data/item1.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/res/data/item2.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/res/data/test.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/test/xtest.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/auto/verify.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/cachez/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/cachez/cache.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/cmd.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/confz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/__main__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/basez.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/clickhousez.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/lib/readme +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/mysqlz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/oraclez.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/orm.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/postgresqlz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/sqlite3z.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/dv/structz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/install.txt +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/run.conf +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/runz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/db/tls.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/ioc/deal.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/ioc/help.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/myers/deal.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/myers/help.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/conf/ioc.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/conf/main.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/conf/myers.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/conf/search.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/conf/xf.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/help/default.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/help/ioc.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/help/myers.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/help/search.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/help/xf.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/res/test.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/search/deal.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/search/help.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/xf/deal.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/demo/xf/help.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/dz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/dz/mapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/evalz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/evalz/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/fz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/fz/dirz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/fz/fhs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/fz/fio.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/fz/lsf.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/html/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/html/test/demo.html +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/html/test/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/html/xml.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/init.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc/conf.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc/confs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc/decorator.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc/loads.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc/single.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/branch.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/call.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/calls.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/deal.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/demo.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/env.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/init.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/ioc.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/iocf.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/join.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/list.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/map.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/mcall.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/obj.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/ovar.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/ref.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/refs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/val.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/var.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/ioc_deal/xfile.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/ioc/wrap.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf/mg.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf/up.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf_deal/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf_deal/call.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf_deal/cvar.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf_deal/ioc.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf_deal/obj.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf_deal/ref.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/conf_deal/val.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/builds.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/confs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/dataset.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/encapes.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/ids.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/init.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/mg.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/single.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/sys_envs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/tdict.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc/unit.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc_deal/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc_deal/deal.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc_deal/ioc.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc_deal/obj.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc_deal/ref.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/ioc_deal/val.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/iocz/wrap/obj.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/logz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/mhttp/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/mhttp/caps.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/mhttp/mhttp.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/mhttp/proxy.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/mhttp/record.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/sslz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/sslz/gen.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/sslz/gen.pyi +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/test/__main__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/test/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/netz/test/test_cli.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/pathz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/pyz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tls.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tools.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/myers_diff.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/test_xfind.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/time/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/time/timez.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/tio/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/tio/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/tio/getch.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/tio/lx.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/tio/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/tio/win.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/tz/xfind.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/__main__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/code.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/code_modify.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/copy_old.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/file.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/buffer.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/listz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/lr.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/lrval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/mapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/nextz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/reval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/setz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/spc.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/spt.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/deal/strz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/exp.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/item.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/mg.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loader/pos.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/buffer.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/listmapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/listz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/lr.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/lrval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/mapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/nextz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/reval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/setz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/spc.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/spt.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/strz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/strz_new.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/deal/strz_old.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/exp.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/item.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/mg.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/pos.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz/test1.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/buffer.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/listmapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/listz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/lr.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/lrval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/mapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/nextz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/reval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/setz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/spc.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/spt.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/strz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/strz_new.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/deal/strz_old.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/exp.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/item.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/mg.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/pos.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/loaderz_nexp/test1.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/mapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/read.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/readz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/readz_nexp.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/stack.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/write.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/conf.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/deal/jsonval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/deal/listmapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/deal/listz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/deal/mapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/deal/reval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/deal/strz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/itemz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writer/mg.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/base.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/conf.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/deal/jsonval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/deal/listmapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/deal/listz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/deal/mapz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/deal/reval.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/deal/strz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/itemz.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/mg.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writerz/testx.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/writez.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xf/xargs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xz/__init__.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xz/conf.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xz/data.js +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xz/test.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz/xz/trs.py +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz.egg-info/dependency_links.txt +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/buildz.egg-info/top_level.txt +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/notes/notes.txt +0 -0
- {buildz-0.6.53 → buildz-0.6.55}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: buildz
|
3
|
-
Version: 0.6.
|
3
|
+
Version: 0.6.55
|
4
4
|
Summary: 配置读写(基于json格式进行简化)、ioc、以及其他工具代码。a json-base file format's read and write code by python, and codes to read and product object from configure file in such format(ioc), and other tool codes
|
5
5
|
Home-page: https://github.com/buildCodeZ/buildz
|
6
6
|
Author: Zzz
|
@@ -0,0 +1,232 @@
|
|
1
|
+
from .. import Base, xf, dz
|
2
|
+
class ArgExp(Exception):
|
3
|
+
def __repr__(self):
|
4
|
+
return self.__str__()
|
5
|
+
def __str__(self):
|
6
|
+
return f"stype: {self.stype}, trs: {self.trs}, des: {self.des}"
|
7
|
+
def __init__(self, stype, trs, des=None, prev = None):
|
8
|
+
super().__init__()
|
9
|
+
self.prev = prev
|
10
|
+
self.stype = stype
|
11
|
+
self.trs = trs
|
12
|
+
self.des = des
|
13
|
+
|
14
|
+
pass
|
15
|
+
class ArgType:
|
16
|
+
list = 'list'
|
17
|
+
dict='dict'
|
18
|
+
@staticmethod
|
19
|
+
def stand(s):
|
20
|
+
if ArgType.islist(s):
|
21
|
+
return ArgType.list
|
22
|
+
return ArgType.dict
|
23
|
+
@staticmethod
|
24
|
+
def islist(s):
|
25
|
+
return s in ('list','l','lst','args')
|
26
|
+
@staticmethod
|
27
|
+
def isdict(s):
|
28
|
+
return s in ('dict', 'd', 'dct', 'maps')
|
29
|
+
|
30
|
+
pass
|
31
|
+
class Params(Base):
|
32
|
+
def init(self, args=[], maps={}):
|
33
|
+
self.args = args
|
34
|
+
self.maps = maps
|
35
|
+
class Args(Base):
|
36
|
+
'''
|
37
|
+
参数映射基础类
|
38
|
+
'''
|
39
|
+
Type=ArgType
|
40
|
+
def call(self, params):
|
41
|
+
return params
|
42
|
+
def deal(self, args, maps):
|
43
|
+
params = self.call(Params(args,maps))
|
44
|
+
return params.args, params.maps
|
45
|
+
def deal_exp(self, exp):
|
46
|
+
return exp
|
47
|
+
|
48
|
+
pass
|
49
|
+
class ArrArgs(Args):
|
50
|
+
'''
|
51
|
+
参数映射类的队列,顺序处理
|
52
|
+
'''
|
53
|
+
def str(self):
|
54
|
+
return f"ArrArgs(args={self.args})"
|
55
|
+
def init(self, args = None):
|
56
|
+
if args is None:
|
57
|
+
args = []
|
58
|
+
self.args = args
|
59
|
+
def add(self, item):
|
60
|
+
self.args.append(item)
|
61
|
+
return self
|
62
|
+
def call(self, params):
|
63
|
+
args, maps = params.args, params.maps
|
64
|
+
i=0
|
65
|
+
try:
|
66
|
+
for i in range(len(self.args)):
|
67
|
+
item = self.args[i]
|
68
|
+
params = item(params)
|
69
|
+
except ArgExp as exp:
|
70
|
+
exp = self.deal_exp(exp, i-1)
|
71
|
+
raise exp
|
72
|
+
#params.args, params.maps = args, maps
|
73
|
+
return params
|
74
|
+
def deal_exp(self, exp, base=None):
|
75
|
+
if base is None:
|
76
|
+
base = len(self.args)-1
|
77
|
+
for i in range(base, -1, -1):
|
78
|
+
exp = self.args[i].deal_exp(exp)
|
79
|
+
return exp
|
80
|
+
class RangeListArgs(Args):
|
81
|
+
'''
|
82
|
+
范围映射
|
83
|
+
'''
|
84
|
+
def str(self):
|
85
|
+
return f"RangeArgs(base={self.base}, last={self.last}, min={self.min})"
|
86
|
+
def init(self, base = 0, last = None, min=0):
|
87
|
+
self.base = base
|
88
|
+
self.last = last
|
89
|
+
self.min = min
|
90
|
+
def deal_exp(self, exp):
|
91
|
+
trs = set()
|
92
|
+
for key, vtype in exp.trs:
|
93
|
+
if ArgType.islist(vtype):
|
94
|
+
trs.add((key+self.base, vtype))
|
95
|
+
else:
|
96
|
+
trs.add((key, vtype))
|
97
|
+
return ArgExp(exp.stype, trs, exp.des, exp)
|
98
|
+
def call(self, params):
|
99
|
+
args, maps = params.args, params.maps
|
100
|
+
if self.last is None:
|
101
|
+
args = args[self.base:]
|
102
|
+
else:
|
103
|
+
args = args[self.base:self.last]
|
104
|
+
if len(args)<self.min:
|
105
|
+
raise ArgExp("need", set([(self.base, 'list')]))
|
106
|
+
return Params(args, maps)
|
107
|
+
params.args, params.maps = args, maps
|
108
|
+
return params
|
109
|
+
|
110
|
+
|
111
|
+
class ArgItem(Base):
|
112
|
+
'''
|
113
|
+
单个字段映射处理
|
114
|
+
'''
|
115
|
+
# vtype = 'dict' | 'list'
|
116
|
+
def init(self, key, vtype=ArgType.dict, need = False, default = False, default_value = None, des = None,remove=True):
|
117
|
+
self.vtype = vtype
|
118
|
+
self.key = key
|
119
|
+
self.need = need
|
120
|
+
self.default = default
|
121
|
+
self.default_value = default_value
|
122
|
+
self.trs = []
|
123
|
+
self.remove = remove
|
124
|
+
if des is None:
|
125
|
+
des = key
|
126
|
+
self.des = des
|
127
|
+
def add(self, key, vtype=ArgType.dict):
|
128
|
+
self.trs.append((key, vtype))
|
129
|
+
return self
|
130
|
+
def deal_exp(self, exp):
|
131
|
+
trs = set()
|
132
|
+
for key, vtype in exp.trs:
|
133
|
+
if key == self.key and vtype==self.vtype:
|
134
|
+
trs.update(self.trs)
|
135
|
+
else:
|
136
|
+
trs.add((key, vtype))
|
137
|
+
return ArgExp(exp.stype, trs, exp.des, exp)
|
138
|
+
def fetch(self, key, vtype, set_args, args, maps):
|
139
|
+
find = False
|
140
|
+
val=None
|
141
|
+
if ArgType.isdict(vtype):
|
142
|
+
val,find = dz.dget(maps, key)
|
143
|
+
if find:
|
144
|
+
if self.remove:
|
145
|
+
dz.dremove(maps, key)
|
146
|
+
else:
|
147
|
+
if key in set_args:
|
148
|
+
val = args[key]
|
149
|
+
if self.remove:
|
150
|
+
set_args.remove(key)
|
151
|
+
find = True
|
152
|
+
return val, find
|
153
|
+
def call(self, set_args, args, maps, rst_args, rst_maps):
|
154
|
+
val = None
|
155
|
+
find = False
|
156
|
+
for key, vtype in self.trs:
|
157
|
+
val, find = self.fetch(key, vtype, set_args, args, maps)
|
158
|
+
if find:
|
159
|
+
break
|
160
|
+
if not find and self.default:
|
161
|
+
find = True
|
162
|
+
val = self.default_value
|
163
|
+
if not find and self.need:
|
164
|
+
raise ArgExp("need", set(self.trs), self.des)
|
165
|
+
if not find:
|
166
|
+
return
|
167
|
+
if ArgType.isdict(self.vtype):
|
168
|
+
xf.dset(rst_maps, self.key, val)
|
169
|
+
else:
|
170
|
+
rst_args[self.key] = val
|
171
|
+
|
172
|
+
pass
|
173
|
+
class ListFill:
|
174
|
+
'''
|
175
|
+
数组映射后,中间缺失位置如何处理
|
176
|
+
exp=报错
|
177
|
+
null=填充None
|
178
|
+
'''
|
179
|
+
exp='exp'
|
180
|
+
null = 'null'
|
181
|
+
default=exp
|
182
|
+
class TrsArgs(Args):
|
183
|
+
def str(self):
|
184
|
+
return f"TrsArgs(args={len(self.args)}, keep={self.keep}, fill = {self.list_fill})"
|
185
|
+
'''
|
186
|
+
数据映射
|
187
|
+
'''
|
188
|
+
def deal_exp(self, exp):
|
189
|
+
for item in self.args:
|
190
|
+
exp = item.deal_exp(exp)
|
191
|
+
return exp
|
192
|
+
def init(self, args=None, keep = False, list_fill = ListFill.default):
|
193
|
+
super().init()
|
194
|
+
if args is None:
|
195
|
+
args = []
|
196
|
+
self.args = args
|
197
|
+
self.keep = keep
|
198
|
+
self.list_fill = list_fill
|
199
|
+
def add(self, item):
|
200
|
+
self.args.append(item)
|
201
|
+
return self
|
202
|
+
def call(self, params):
|
203
|
+
args, maps = params.args, params.maps
|
204
|
+
rst_args, rst_maps = {}, {}
|
205
|
+
set_args = set(range(len(args)))
|
206
|
+
for item in self.args:
|
207
|
+
item(set_args, args, maps, rst_args, rst_maps)
|
208
|
+
if self.keep and len(set_args)>0:
|
209
|
+
for i in set_args:
|
210
|
+
if i not in rst_args:
|
211
|
+
rst_args[i] = args[i]
|
212
|
+
l_args = 0
|
213
|
+
if len(rst_args)>0:
|
214
|
+
l_args= max(rst_args.keys())+1
|
215
|
+
out_args = []
|
216
|
+
for i in range(l_args):
|
217
|
+
if i in rst_args:
|
218
|
+
out_args.append(rst_args[i])
|
219
|
+
else:
|
220
|
+
if self.list_fill == ListFill.null:
|
221
|
+
out_args.append(None)
|
222
|
+
else:
|
223
|
+
raise ArgExp("need", set([(i, ArgType.list)]))
|
224
|
+
if self.keep:
|
225
|
+
for k in maps:
|
226
|
+
if k not in rst_maps:
|
227
|
+
rst_maps[k] = maps[k]
|
228
|
+
return Params(out_args, rst_maps)
|
229
|
+
params.args, params.maps = out_args, rst_maps
|
230
|
+
return params
|
231
|
+
|
232
|
+
pass
|
@@ -0,0 +1,47 @@
|
|
1
|
+
from buildz import Base, xf, dz
|
2
|
+
from . import argz
|
3
|
+
from . import evalx
|
4
|
+
class Fc(Base):
|
5
|
+
def str(self):
|
6
|
+
return str(self.fc)
|
7
|
+
def init(self, fc=None):
|
8
|
+
self.fc = fc
|
9
|
+
def call(self, params):
|
10
|
+
return self.fc(*params.args, **params.maps), 1
|
11
|
+
@staticmethod
|
12
|
+
def make(fc):
|
13
|
+
if isinstance(fc, Fc):
|
14
|
+
return fc
|
15
|
+
return Fc(fc)
|
16
|
+
class RetFc(Fc):
|
17
|
+
def call(self, params):
|
18
|
+
return (params.args, params.maps), 1
|
19
|
+
class Call(Fc):
|
20
|
+
def str(self):
|
21
|
+
return str(self.fcs)
|
22
|
+
def init(self, fc, args=None, eval=None):
|
23
|
+
if not dz.islist(fc):
|
24
|
+
fc = [fc]
|
25
|
+
fc = [self.make(k) for k in fc]
|
26
|
+
self.fcs = fc
|
27
|
+
self.args = args
|
28
|
+
self.eval = eval
|
29
|
+
def call(self, params):
|
30
|
+
if self.eval is not None:
|
31
|
+
if not self.eval(params):
|
32
|
+
return None,0
|
33
|
+
if self.args is not None:
|
34
|
+
params = self.args(params)
|
35
|
+
try:
|
36
|
+
rst = None,0
|
37
|
+
for fc in self.fcs:
|
38
|
+
val,mark_call = fc(params)
|
39
|
+
if mark_call:
|
40
|
+
rst = val, mark_call
|
41
|
+
return rst
|
42
|
+
except argz.ArgExp as exp:
|
43
|
+
if self.args is not None:
|
44
|
+
exp = self.args.deal_exp(exp)
|
45
|
+
raise exp
|
46
|
+
def add(self, fc):
|
47
|
+
self.fcs.append(self.make(fc))
|
@@ -0,0 +1,118 @@
|
|
1
|
+
from ..iocz.conf import conf
|
2
|
+
from .. import Base, xf, dz,pyz
|
3
|
+
from .argz import *
|
4
|
+
"""
|
5
|
+
key:{
|
6
|
+
src: [a,b,c]
|
7
|
+
des: asdf
|
8
|
+
need:1
|
9
|
+
default: True
|
10
|
+
default_value: 123
|
11
|
+
remove: 1
|
12
|
+
}
|
13
|
+
key: [
|
14
|
+
src,
|
15
|
+
[default, default_value]
|
16
|
+
[des, need, remove]
|
17
|
+
]
|
18
|
+
"""
|
19
|
+
class ArgItemConf(conf.Conf):
|
20
|
+
def init(self):
|
21
|
+
super().init()
|
22
|
+
self.index(0, 'src')
|
23
|
+
self.key('src')
|
24
|
+
df = conf.Conf()
|
25
|
+
df.index(0, 'default')
|
26
|
+
df.index(1, 'default_value')
|
27
|
+
self.index(1,deal= df, dict_out=1)
|
28
|
+
self.key('default', deal=df, dict_out=1)
|
29
|
+
des = conf.Conf()
|
30
|
+
des.index(0, 'des')
|
31
|
+
des.index(1,'need')
|
32
|
+
des.index(2, 'remove')
|
33
|
+
self.index(2, deal=des, dict_out=1)
|
34
|
+
|
35
|
+
pass
|
36
|
+
class ArgSrcConf(conf.Conf):
|
37
|
+
def init(self):
|
38
|
+
super().init()
|
39
|
+
self.index(0, 'key', need=1)
|
40
|
+
self.key('key', 'val,value,data'.split(','), need=1)
|
41
|
+
self.index(1, 'type')
|
42
|
+
self.key('type', 'vtype'.split(","))
|
43
|
+
def call(self, data, unit=None):
|
44
|
+
data, upd = super().call(data, unit)
|
45
|
+
val = data['key']
|
46
|
+
if 'type' not in data:
|
47
|
+
if type(val)==int:
|
48
|
+
vtype = ArgType.list
|
49
|
+
else:
|
50
|
+
vtype = ArgType.dict
|
51
|
+
else:
|
52
|
+
vtype = data['type']
|
53
|
+
data['type'] = ArgType.stand(vtype)
|
54
|
+
return data, upd
|
55
|
+
|
56
|
+
class TrsArgsBuilder(Base):
|
57
|
+
def init(self):
|
58
|
+
self.conf = ArgItemConf()
|
59
|
+
self.src_conf = ArgSrcConf()
|
60
|
+
def visits(self, datas, vtype,obj):
|
61
|
+
for key, item in dz.dict2iter(datas):
|
62
|
+
item,_ = self.conf(item)
|
63
|
+
it = ArgItem(key, vtype, *dz.g(item, need=0, default=0, default_value=None,des=None, remove=True))
|
64
|
+
srcs = dz.g(item, src=[])
|
65
|
+
if not dz.islist(srcs):
|
66
|
+
srcs = [srcs]
|
67
|
+
for src in srcs:
|
68
|
+
src, _ = self.src_conf(src)
|
69
|
+
key, vtype = src['key'], src['type']
|
70
|
+
it.add(key, vtype)
|
71
|
+
obj.add(it)
|
72
|
+
def call(self, conf):
|
73
|
+
lists = xf.g(conf, list={})
|
74
|
+
dicts = xf.g(conf, dict={})
|
75
|
+
if len(lists)+len(dicts)==0:
|
76
|
+
return None
|
77
|
+
keep,list_fill = xf.g(conf, keep=0, fill='exp')
|
78
|
+
obj = TrsArgs([], keep, list_fill)
|
79
|
+
self.visits(lists, ArgType.list, obj)
|
80
|
+
self.visits(dicts, ArgType.dict, obj)
|
81
|
+
return obj
|
82
|
+
|
83
|
+
class FullArgsBuilder(Base):
|
84
|
+
def init(self):
|
85
|
+
self.trs_build = TrsArgsBuilder()
|
86
|
+
cf = conf.Conf()
|
87
|
+
rcf = conf.Conf()
|
88
|
+
rcf.index(0, 'base')
|
89
|
+
rcf.index(1, 'last')
|
90
|
+
rcf.index(2, 'min')
|
91
|
+
cf.index(0, 'range', deal=rcf)
|
92
|
+
cf.key('range', 'ranges'.split(","), deal=rcf)
|
93
|
+
cf.index(1, 'list')
|
94
|
+
cf.index(2, 'dict')
|
95
|
+
cf.key('list', 'args,lists'.split(","))
|
96
|
+
cf.key("dict", 'maps,dicts'.split(","))
|
97
|
+
_cf = conf.Conf()
|
98
|
+
_cf.index(0, 'keep')
|
99
|
+
_cf.index(1, 'fill')
|
100
|
+
_cf.key('fill', 'fill_type'.split(','))
|
101
|
+
cf.index(3, deal=_cf, dict_out=1)
|
102
|
+
self.conf = cf
|
103
|
+
def call(self, conf):
|
104
|
+
arr_args = ArrArgs()
|
105
|
+
conf, upd = self.conf(conf)
|
106
|
+
#print(f"BUILD conf: {conf}")
|
107
|
+
ranges = dz.g(conf, range=None)
|
108
|
+
if ranges is not None:
|
109
|
+
base = ranges['base']
|
110
|
+
if base is not None:
|
111
|
+
last, min = dz.g(ranges, last=None,min=0)
|
112
|
+
min = pyz.nnull(min, 0)
|
113
|
+
range_args = RangeListArgs(base, last, min)
|
114
|
+
arr_args.add(range_args)
|
115
|
+
trs_args = self.trs_build(conf)
|
116
|
+
if trs_args is not None:
|
117
|
+
arr_args.add(trs_args)
|
118
|
+
return arr_args
|
@@ -0,0 +1,136 @@
|
|
1
|
+
from ..iocz.conf import conf
|
2
|
+
from .. import Base, xf, dz,pyz
|
3
|
+
from .callz import *
|
4
|
+
from ..iocz.ioc_deal.base import BaseEncape,BaseDeal
|
5
|
+
from ..iocz.conf.up import BaseConf
|
6
|
+
from .conf_argz import *
|
7
|
+
from .evalx import *
|
8
|
+
from .. import iocz
|
9
|
+
from . import argz
|
10
|
+
class EnvFc(Fc):
|
11
|
+
def init(self, unit):
|
12
|
+
super().init()
|
13
|
+
self.unit = unit
|
14
|
+
def call(self, params):
|
15
|
+
self.unit.update_env(params.maps)
|
16
|
+
return True,1
|
17
|
+
class ArgsCallEncape(BaseEncape):
|
18
|
+
def init(self, fcs, args, eval, unit):
|
19
|
+
super().init()
|
20
|
+
self.fcs = fcs
|
21
|
+
self.args = args
|
22
|
+
self.eval = eval
|
23
|
+
self.call_fc = None
|
24
|
+
self.unit = unit
|
25
|
+
def ref(self, key, unit):
|
26
|
+
key = self.obj(key)
|
27
|
+
if type(key)==str:
|
28
|
+
rst, find = unit.get(key)
|
29
|
+
assert find, f"fc not found: '{key}'"
|
30
|
+
key=rst
|
31
|
+
return key
|
32
|
+
def call(self, params=None):
|
33
|
+
if self.call_fc is None:
|
34
|
+
fcs = [self.ref(fc, self.unit) for fc in self.fcs]
|
35
|
+
self.call_fc = Call(fcs, self.args, self.eval)
|
36
|
+
return self.call_fc
|
37
|
+
class ArgsCallDeal(BaseDeal):
|
38
|
+
def init(self, fc=True, update_env = False):
|
39
|
+
super().init()
|
40
|
+
_conf = BaseConf()
|
41
|
+
index=1
|
42
|
+
self.fc = fc
|
43
|
+
self.update_env = update_env
|
44
|
+
if fc:
|
45
|
+
_conf.ikey(1, 'fc', 'fcs,calls,call'.split(','))
|
46
|
+
_conf.ikey(2, 'eval', "judges,judge,evals".split(","))
|
47
|
+
_conf.ikey(3, 'conf')
|
48
|
+
else:
|
49
|
+
_conf.ikey(2, 'eval', "judges,judge,evals".split(","))
|
50
|
+
_conf.ikey(1, 'conf')
|
51
|
+
self.update=_conf
|
52
|
+
self.args_builder = FullArgsBuilder()
|
53
|
+
def deal(self, conf, unit):
|
54
|
+
conf_eval = dz.g(conf, eval=None)
|
55
|
+
conf_args = dz.g(conf, conf=None)
|
56
|
+
_eval = None
|
57
|
+
if conf_eval is not None:
|
58
|
+
_eval = evalBuilder(conf_eval)
|
59
|
+
_args = None
|
60
|
+
if conf_args is not None:
|
61
|
+
_args = self.args_builder(conf_args)
|
62
|
+
if self.fc:
|
63
|
+
fcs = dz.g(conf, fc=[])
|
64
|
+
if type(fcs)==str:
|
65
|
+
fcs = [fcs]
|
66
|
+
fcs = [self.get_encape(fc, unit) for fc in fcs]
|
67
|
+
else:
|
68
|
+
if self.update_env:
|
69
|
+
fcs = [EnvFc(unit)]
|
70
|
+
else:
|
71
|
+
fcs = [RetFc()]
|
72
|
+
# if self.update_env and not self.fc:
|
73
|
+
# return UpdateEnvEncape(_args, _eval, unit)
|
74
|
+
return ArgsCallEncape(fcs, _args, _eval, unit)
|
75
|
+
class RetArgsDeal(ArgsCallDeal):
|
76
|
+
def init(self):
|
77
|
+
super().init(False)
|
78
|
+
class UpdateEnvDeal(ArgsCallDeal):
|
79
|
+
def init(self):
|
80
|
+
super().init(False,True)
|
81
|
+
confs = xf.loads(r"""
|
82
|
+
# confs.pri: {
|
83
|
+
# deal_args: {
|
84
|
+
# type=deal
|
85
|
+
# src=buildz.argzx.conf_callz.ArgsCallDeal
|
86
|
+
# call=1
|
87
|
+
# deals=[call,fc]
|
88
|
+
# }
|
89
|
+
# }
|
90
|
+
confs.pri: [
|
91
|
+
(
|
92
|
+
(deal, deal_ret)
|
93
|
+
buildz.argz.conf_callz.RetArgsDeal
|
94
|
+
1,
|
95
|
+
[argz_ret,ret]
|
96
|
+
)
|
97
|
+
(
|
98
|
+
(deal, deal_argz_env)
|
99
|
+
buildz.argz.conf_callz.UpdateEnvDeal
|
100
|
+
1,
|
101
|
+
[argz_env,argz_envs]
|
102
|
+
)
|
103
|
+
(
|
104
|
+
(deal, deal_args)
|
105
|
+
buildz.argz.conf_callz.ArgsCallDeal
|
106
|
+
1,
|
107
|
+
[argz,argz_call,argz_fc]
|
108
|
+
)
|
109
|
+
]
|
110
|
+
builds: [deal_args, deal_ret, deal_argz_env]
|
111
|
+
""")
|
112
|
+
class ConfBuilder(Base):
|
113
|
+
def init(self, conf=None):
|
114
|
+
mg = iocz.build(conf)
|
115
|
+
mg.add_conf(confs)
|
116
|
+
self.mg = mg
|
117
|
+
for key in 'push_var,push_vars,pop_var,pop_vars,set_var,set_vars,get_var,unset_var,unset_vars'.split(","):
|
118
|
+
setattr(self, key, getattr(mg,key))
|
119
|
+
def adds(self, conf):
|
120
|
+
if type(conf)==str:
|
121
|
+
conf = xf.loads(conf)
|
122
|
+
conf = {'confs': conf}
|
123
|
+
self.mg.add_conf(conf)
|
124
|
+
def add(self, conf):
|
125
|
+
if type(conf)==str:
|
126
|
+
conf = xf.loads(conf)
|
127
|
+
conf = {'confs': [conf]}
|
128
|
+
self.mg.add_conf(conf)
|
129
|
+
def call(self, key, args, maps):
|
130
|
+
params = argz.Params(args, maps)
|
131
|
+
#p = iocz.Params(params=params)
|
132
|
+
fc, find = self.mg.get(key)
|
133
|
+
#rst, find = self.mg.get(key, params=p)
|
134
|
+
assert find, f"key not found: '{key}'"
|
135
|
+
return fc(params)[0]
|
136
|
+
return rst[0]
|
@@ -0,0 +1,21 @@
|
|
1
|
+
#
|
2
|
+
from .. import evalz,xf,Base
|
3
|
+
|
4
|
+
class VarEval(evalz.Eval):
|
5
|
+
def init(self, key, stype = 'list'):
|
6
|
+
self.key = key
|
7
|
+
self.stype = stype
|
8
|
+
def call(self, obj):
|
9
|
+
args, maps = obj.args, obj.maps
|
10
|
+
if self.stype=='list':
|
11
|
+
return args[self.key]
|
12
|
+
return maps[self.key]
|
13
|
+
class VarBuild(evalz.Build):
|
14
|
+
def init(self, stype="list"):
|
15
|
+
super().init()
|
16
|
+
self.stype = stype
|
17
|
+
def call(self, data):
|
18
|
+
return VarEval(data['data'][0], self.stype)
|
19
|
+
lb = VarBuild('list')
|
20
|
+
db = VarBuild('dict')
|
21
|
+
evalBuilder = evalz.EvalBuilder.Make().set(["l","list","args"], lb).set(['d','dict','maps'], db)
|
@@ -0,0 +1,29 @@
|
|
1
|
+
#
|
2
|
+
|
3
|
+
from buildz.argz import conf_argz as argz
|
4
|
+
from buildz.tls import *
|
5
|
+
conf = xf.loads(r"""
|
6
|
+
#range=(0,12,3)
|
7
|
+
range=(1,12,1)
|
8
|
+
args: {
|
9
|
+
0:[0,0]
|
10
|
+
}
|
11
|
+
maps: {
|
12
|
+
a={
|
13
|
+
default: test
|
14
|
+
}
|
15
|
+
}
|
16
|
+
""")
|
17
|
+
def test():
|
18
|
+
args = [0,1,2]
|
19
|
+
maps = {'a':'b','c':'d'}
|
20
|
+
bd = argz.FullArgsBuilder()
|
21
|
+
obj = bd(conf)
|
22
|
+
args, maps = obj.deal(args, maps)
|
23
|
+
print(f"obj: {obj}")
|
24
|
+
print(f"args: {args}, maps: {maps}")
|
25
|
+
pass
|
26
|
+
|
27
|
+
pass
|
28
|
+
|
29
|
+
pyz.lc(locals(),test)
|
@@ -0,0 +1,63 @@
|
|
1
|
+
#
|
2
|
+
|
3
|
+
#from buildz.argz import conf_argz as argz
|
4
|
+
from buildz.argz import conf_callz as callz
|
5
|
+
from buildz.tls import *
|
6
|
+
conf = r"""
|
7
|
+
(
|
8
|
+
(argz, main)
|
9
|
+
(search, test_ret,test_var,test_env)
|
10
|
+
)
|
11
|
+
{
|
12
|
+
type: argz
|
13
|
+
id: search
|
14
|
+
call: search_fc
|
15
|
+
judge: eq(args[0], search)
|
16
|
+
conf={
|
17
|
+
range: 1
|
18
|
+
dict: {
|
19
|
+
dp: ((0, dp), false, (null,1))
|
20
|
+
pt_fp: ((1, pt_fp), (true,null))
|
21
|
+
pt: ((2, pt), (true,null))
|
22
|
+
}
|
23
|
+
}
|
24
|
+
}
|
25
|
+
[
|
26
|
+
(argz_ret, test_ret)
|
27
|
+
[1]
|
28
|
+
eq(args[0], test)
|
29
|
+
]
|
30
|
+
[
|
31
|
+
(argz_env, test_env)
|
32
|
+
[1]
|
33
|
+
eq(args[0], env)
|
34
|
+
]
|
35
|
+
[
|
36
|
+
(argz, test_var)
|
37
|
+
test_fc
|
38
|
+
eq(args(0), var)
|
39
|
+
]
|
40
|
+
[
|
41
|
+
(cvar, search_fc)
|
42
|
+
buildz.fz.search
|
43
|
+
]
|
44
|
+
"""
|
45
|
+
def test_fc(*a, **b):
|
46
|
+
print(f"test_fc({a}, {b})")
|
47
|
+
return a,b
|
48
|
+
def test():
|
49
|
+
args = ['env','.']
|
50
|
+
maps = {
|
51
|
+
'pt_fp': r".*\.py$"
|
52
|
+
}
|
53
|
+
bd = argz.build()
|
54
|
+
bd.adds(conf)
|
55
|
+
bd.push_var("test_fc",test_fc)
|
56
|
+
rst = bd("main", args, maps)
|
57
|
+
print(f"rst: {rst}")
|
58
|
+
print(bd.mg.envs)
|
59
|
+
pass
|
60
|
+
|
61
|
+
pass
|
62
|
+
|
63
|
+
pyz.lc(locals(),test)
|
@@ -0,0 +1,34 @@
|
|
1
|
+
{
|
2
|
+
id: main
|
3
|
+
type: calls
|
4
|
+
range: 1
|
5
|
+
calls: [
|
6
|
+
search
|
7
|
+
]
|
8
|
+
}
|
9
|
+
{
|
10
|
+
id: search
|
11
|
+
type: call
|
12
|
+
src: search
|
13
|
+
judge: ['=', args[0], search]
|
14
|
+
args: [1, [[0,()], [1, ()], {}]]
|
15
|
+
args: {
|
16
|
+
range: 1
|
17
|
+
keep: 1
|
18
|
+
list: {
|
19
|
+
0: {
|
20
|
+
des: path
|
21
|
+
need: 1
|
22
|
+
src: 0
|
23
|
+
}
|
24
|
+
}
|
25
|
+
dict: {
|
26
|
+
filepath: {
|
27
|
+
srcs: [f, fp, filepath]
|
28
|
+
}
|
29
|
+
content: {
|
30
|
+
srcs: [c, ct, content]
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
34
|
+
}
|