buildz 0.4.3__tar.gz → 0.4.4__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.4.3/buildz.egg-info → buildz-0.4.4}/PKG-INFO +1 -1
- buildz-0.4.4/buildz/__init__.py +4 -0
- buildz-0.4.4/buildz/argx.py +46 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/demo/ioc/test.py +4 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/demo/ioc/test_conf/data1.js +8 -0
- buildz-0.4.4/buildz/demo/xf/test.js +12 -0
- buildz-0.4.4/buildz/demo/xf/test.py +13 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/deals.js +4 -0
- buildz-0.4.4/buildz/ioc/ioc_deal/conf/ioc_lists.js +23 -0
- buildz-0.4.4/buildz/ioc/ioc_deal/ioc.py +19 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/__init__.py +2 -2
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/__main__.py +2 -2
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/build.py +2 -2
- buildz-0.4.4/buildz/old_version/keys.py +232 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/__init__.py +3 -3
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/base.py +1 -1
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/buff.py +1 -1
- buildz-0.4.4/buildz/old_version/xconfz/fc.py +8 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fc_item.py +2 -2
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fc_list.py +2 -2
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fc_map.py +2 -2
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fc_set.py +1 -1
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fc_str.py +1 -1
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fc_type.py +3 -3
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fmt_base.py +1 -1
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fmt_str.py +5 -5
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/fmt_type.py +4 -4
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/mg.py +4 -4
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/mg_fmt.py +6 -6
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/__init__.py +2 -1
- buildz-0.4.4/buildz/xf/xargs.py +26 -0
- {buildz-0.4.3 → buildz-0.4.4/buildz.egg-info}/PKG-INFO +1 -1
- {buildz-0.4.3 → buildz-0.4.4}/buildz.egg-info/SOURCES.txt +38 -30
- {buildz-0.4.3 → buildz-0.4.4}/setup.py +1 -1
- buildz-0.4.3/buildz/xconfz/fc.py +0 -8
- {buildz-0.4.3 → buildz-0.4.4}/LICENSE +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/MANIFEST.in +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/README.md +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/demo/ioc/test_conf/base.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/demo/ioc/test_conf/data2.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/demo/ioc/test_conf/data3.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/dj.txt +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/__init__.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/init.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc/base.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc/conf.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc/confs.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/base.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/call.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/calls.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/demo.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/env.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/mcall.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/obj.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/ovar.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/ref.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/val.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/ioc/ioc_deal/var.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/keys.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/base.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/confz.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/demo.confz +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/demo.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/run.confz +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/test.confz +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/test.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/testc.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/testf.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/testz.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/value.confz +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/demo/x/x.py +0 -0
- {buildz-0.4.3/buildz → buildz-0.4.4/buildz/old_version}/xconfz/file.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/pyz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/test_loader copy.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/test_loader.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/test_writer.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/tools.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/file.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/base.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/buffer.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/listz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/lr.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/lrval.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/mapz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/nextz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/reval.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/setz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/spc.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/spt.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/deal/strz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/exp.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/item.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/mg.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/loader/pos.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/mapz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/read.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/test_write.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/write.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/base.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/conf.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/deal/jsonval.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/deal/listz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/deal/mapz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/deal/reval.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/deal/strz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/itemz.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz/xf/writer/mg.py +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz.egg-info/dependency_links.txt +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/buildz.egg-info/top_level.txt +0 -0
- {buildz-0.4.3 → buildz-0.4.4}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: buildz
|
3
|
-
Version: 0.4.
|
3
|
+
Version: 0.4.4
|
4
4
|
Summary: a json-like file format's read and write code by python, and codes to read and product object from configure file in such format
|
5
5
|
Home-page: https://github.com/buildCodeZ/buildz
|
6
6
|
Author: Zzz
|
@@ -0,0 +1,46 @@
|
|
1
|
+
#coding=utf-8
|
2
|
+
import sys
|
3
|
+
def fetch(argv = None):
|
4
|
+
r"""
|
5
|
+
format: a b c -a 123 -b456 --c=789 +d -x"??? ???" y z
|
6
|
+
return: [a,b,c,y,z], {a:123,b:456,c:789,d:1,x:'??? ???'}
|
7
|
+
"""
|
8
|
+
if argv is None:
|
9
|
+
argv = sys.argv[1:]
|
10
|
+
lists, maps = [],{}
|
11
|
+
argv = [str(k).strip() for k in argv]
|
12
|
+
argv = [k for k in argv if k!=""]
|
13
|
+
i = 0
|
14
|
+
while i<len(argv):
|
15
|
+
v = argv[i]
|
16
|
+
if v in ["-", "--", "+"]or v[0] not in "+-":
|
17
|
+
lists.append(v)
|
18
|
+
i+=1
|
19
|
+
continue
|
20
|
+
if v[0] == "+":
|
21
|
+
key = v[1:]
|
22
|
+
val = 1
|
23
|
+
else:
|
24
|
+
if v[1]=="-":
|
25
|
+
kv = v[2:]
|
26
|
+
x = kv.split("=")
|
27
|
+
key = x[0]
|
28
|
+
val = "=".join(x[1:])
|
29
|
+
else:
|
30
|
+
key = v[1]
|
31
|
+
if len(v)>2:
|
32
|
+
val = argv[2:]
|
33
|
+
else:
|
34
|
+
if i+1>=len(argv):
|
35
|
+
val = 1
|
36
|
+
else:
|
37
|
+
val = argv[i+1]
|
38
|
+
i+=1
|
39
|
+
maps[key] = val
|
40
|
+
i+=1
|
41
|
+
return lists, maps
|
42
|
+
|
43
|
+
pass
|
44
|
+
|
45
|
+
|
46
|
+
|
@@ -1,6 +1,7 @@
|
|
1
1
|
#
|
2
2
|
from buildz.ioc import build
|
3
3
|
from buildz import xf
|
4
|
+
from buildz import argx
|
4
5
|
import os
|
5
6
|
join = os.path.join
|
6
7
|
class Test:
|
@@ -11,6 +12,8 @@ class Test:
|
|
11
12
|
def run(self):
|
12
13
|
print(f"get obj:{self}")
|
13
14
|
print("get_obj.obj:", self.obj)
|
15
|
+
print(f"ioc: {self.ioc}")
|
16
|
+
print(f"ioc env: {self.ioc.get_env('path')}")
|
14
17
|
|
15
18
|
pass
|
16
19
|
fps = xf.loads("[data1.js, data2.js, data3.js]")[:2]
|
@@ -30,6 +33,7 @@ def test():
|
|
30
33
|
print(f"obj: {obj}")
|
31
34
|
print("DO CALLS")
|
32
35
|
confs.get("data1.calls")
|
36
|
+
print("ARGS: ", argx.fetch())
|
33
37
|
|
34
38
|
pass
|
35
39
|
|
@@ -0,0 +1,13 @@
|
|
1
|
+
from buildz import xf
|
2
|
+
|
3
|
+
from os.path import join, dirname
|
4
|
+
dp = dirname(__file__)
|
5
|
+
fp = join(dp, "test.js")
|
6
|
+
|
7
|
+
s = xf.fread(fp)
|
8
|
+
obj = xf.loads(s)
|
9
|
+
|
10
|
+
rs = xf.dumps(obj, format=1, deep = 1)
|
11
|
+
print(rs)
|
12
|
+
args = xf.args()
|
13
|
+
print("args from cmd:", args)
|
@@ -0,0 +1,23 @@
|
|
1
|
+
// [[id, type], key]
|
2
|
+
// [type, key]
|
3
|
+
{
|
4
|
+
sort: 1
|
5
|
+
data: [
|
6
|
+
{
|
7
|
+
nullable: 0,
|
8
|
+
out: 1,
|
9
|
+
conf: {
|
10
|
+
sort: -1,
|
11
|
+
data:[
|
12
|
+
{key: id, default: null},
|
13
|
+
{key: type, default: null}
|
14
|
+
]
|
15
|
+
}
|
16
|
+
},
|
17
|
+
{
|
18
|
+
nullable: 1,
|
19
|
+
key: key,
|
20
|
+
default: conf
|
21
|
+
}
|
22
|
+
]
|
23
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
#coding=utf-8
|
2
|
+
from ..ioc.base import Base, EncapeData
|
3
|
+
from .base import FormatData,BaseDeal
|
4
|
+
from buildz import xf, pyz
|
5
|
+
import os
|
6
|
+
dp = os.path.dirname(__file__)
|
7
|
+
join = os.path.join
|
8
|
+
class IOCObjectDeal(BaseDeal):
|
9
|
+
def init(self, fp_lists=None, fp_defaults=None):
|
10
|
+
super().init("IOCObjectDeal", fp_lists, fp_defaults, join(dp, "conf", "ioc_lists.js"), None)
|
11
|
+
def deal(self, edata:EncapeData):
|
12
|
+
data = edata.data
|
13
|
+
data = self.fill(data)
|
14
|
+
key = data['key']
|
15
|
+
if not hasattr(edata, key):
|
16
|
+
return None
|
17
|
+
return getattr(edata, key)
|
18
|
+
|
19
|
+
pass
|
@@ -1,6 +1,6 @@
|
|
1
1
|
#from buildz.confz import read, loadfile, output, fread
|
2
|
-
from
|
3
|
-
from
|
2
|
+
from .build import Builder, main
|
3
|
+
from .keys import help
|
4
4
|
"""
|
5
5
|
json-like(called 'confz' in here) data format function:
|
6
6
|
read: string -> obj
|
@@ -41,14 +41,14 @@ builtins._list = build_list
|
|
41
41
|
builtins._dict = build_dict
|
42
42
|
g_default_import = "buildz"+".base"
|
43
43
|
def read_confz(filepath):
|
44
|
-
from
|
44
|
+
from . import confz
|
45
45
|
s = confz.fread(filepath)
|
46
46
|
obj = confz.read(s)
|
47
47
|
return obj
|
48
48
|
|
49
49
|
pass
|
50
50
|
def read_json(filepath):
|
51
|
-
from
|
51
|
+
from . import confz
|
52
52
|
import json
|
53
53
|
s = confz.fread(filepath)
|
54
54
|
obj = json.loads(s)
|
@@ -0,0 +1,232 @@
|
|
1
|
+
#coding=utf-8
|
2
|
+
english = """
|
3
|
+
1. value:
|
4
|
+
1) string
|
5
|
+
{
|
6
|
+
key: {key}
|
7
|
+
val: {value}
|
8
|
+
}
|
9
|
+
2) int, float, bool
|
10
|
+
{
|
11
|
+
key: {key}
|
12
|
+
val: <{value}, {type}>
|
13
|
+
}
|
14
|
+
3) from source code:
|
15
|
+
{
|
16
|
+
key: {key}
|
17
|
+
import: {package}
|
18
|
+
# var, not val
|
19
|
+
var: {var}
|
20
|
+
}
|
21
|
+
4) value or method from object:
|
22
|
+
{
|
23
|
+
key: {key}
|
24
|
+
ref: {ref}
|
25
|
+
# var, not val
|
26
|
+
var: {var}
|
27
|
+
}
|
28
|
+
5) list:
|
29
|
+
{
|
30
|
+
key: {key}
|
31
|
+
args: [
|
32
|
+
...
|
33
|
+
]
|
34
|
+
}
|
35
|
+
6) dict:
|
36
|
+
{
|
37
|
+
key: {key}
|
38
|
+
# notice this is "[", not "{"
|
39
|
+
maps: [
|
40
|
+
...
|
41
|
+
]
|
42
|
+
}
|
43
|
+
7) just is {data}, not do any transfer
|
44
|
+
{
|
45
|
+
key: {key}
|
46
|
+
data: {data}
|
47
|
+
}
|
48
|
+
2. object:
|
49
|
+
{
|
50
|
+
# optional, if 0, new every time, else just build a single static object
|
51
|
+
single: 0|1
|
52
|
+
key: {key}
|
53
|
+
import: {import}
|
54
|
+
call: {class}
|
55
|
+
# optional, should not put with args
|
56
|
+
val: {val}
|
57
|
+
# optional, should not put with val
|
58
|
+
args: [
|
59
|
+
({value}, {type})
|
60
|
+
...
|
61
|
+
]
|
62
|
+
# optional
|
63
|
+
maps: [
|
64
|
+
({key}, {value}, {type})
|
65
|
+
...
|
66
|
+
]
|
67
|
+
# optional, should no with val, args, maps
|
68
|
+
data: {data}
|
69
|
+
# optional
|
70
|
+
calls: [
|
71
|
+
({key}, {type}) #type: call(object.method), fc(static function)
|
72
|
+
]
|
73
|
+
}
|
74
|
+
3. function:
|
75
|
+
1) object's method
|
76
|
+
{
|
77
|
+
key: {key}
|
78
|
+
ref: {ref} #optional
|
79
|
+
call: {call} #optional, object.{call}(...), if not {call}: object(...)
|
80
|
+
val: {val} # optional, should not put with args
|
81
|
+
args: [...] # optional, should not put with val
|
82
|
+
maps: [...] # optional
|
83
|
+
data: {data} # optional, should no with val, args, maps
|
84
|
+
}
|
85
|
+
# if there is not params in object, put an empty args or empty maps: {key:{key}, ref:{ref}, args:[]}
|
86
|
+
2) static function
|
87
|
+
{
|
88
|
+
key: {key}
|
89
|
+
import: {import}
|
90
|
+
call: {call}
|
91
|
+
val: {val} # optional, should not put with args
|
92
|
+
args: [...] # optional, should not put with val
|
93
|
+
maps: [...] # optional
|
94
|
+
data: {data} # optional, should no with val, args, maps
|
95
|
+
}
|
96
|
+
4. functions:
|
97
|
+
{
|
98
|
+
key: {key}
|
99
|
+
calls: [
|
100
|
+
...
|
101
|
+
]
|
102
|
+
}
|
103
|
+
|
104
|
+
"""
|
105
|
+
chinese = """
|
106
|
+
1. 定义值:
|
107
|
+
1) 字符串
|
108
|
+
{
|
109
|
+
key: {key}
|
110
|
+
val: {value}
|
111
|
+
}
|
112
|
+
2) int, float, bool
|
113
|
+
{
|
114
|
+
key: {key}
|
115
|
+
val: <{value}, {type}>
|
116
|
+
}
|
117
|
+
3) 源代码中的变量(常量):
|
118
|
+
{
|
119
|
+
key: {key}
|
120
|
+
import: {package}
|
121
|
+
# var, 不是val
|
122
|
+
var: {var}
|
123
|
+
}
|
124
|
+
4) 对象的变量:
|
125
|
+
{
|
126
|
+
key: {key}
|
127
|
+
ref: {ref}
|
128
|
+
# var, 不是val
|
129
|
+
var: {var}
|
130
|
+
}
|
131
|
+
5) list:
|
132
|
+
{
|
133
|
+
key: {key}
|
134
|
+
args: [
|
135
|
+
...
|
136
|
+
]
|
137
|
+
}
|
138
|
+
6) dict:
|
139
|
+
{
|
140
|
+
key: {key}
|
141
|
+
# 注意是"[", 不是"{"
|
142
|
+
maps: [
|
143
|
+
...
|
144
|
+
]
|
145
|
+
}
|
146
|
+
7) 纯数据,不做任何转换
|
147
|
+
{
|
148
|
+
key: {key}
|
149
|
+
data: {data}
|
150
|
+
}
|
151
|
+
2. object对象:
|
152
|
+
{
|
153
|
+
# 可选,是否是单例
|
154
|
+
single: 0|1
|
155
|
+
key: {key}
|
156
|
+
import: {import}
|
157
|
+
call: {class}
|
158
|
+
# 可选,不和args一起
|
159
|
+
val: {val}
|
160
|
+
# 可选,不和val一起
|
161
|
+
args: [
|
162
|
+
({value}, {type})
|
163
|
+
...
|
164
|
+
]
|
165
|
+
# 可选
|
166
|
+
maps: [
|
167
|
+
({key}, {value}, {type})
|
168
|
+
...
|
169
|
+
]
|
170
|
+
# 可选, 不和val, args, maps一起
|
171
|
+
data: {data}
|
172
|
+
# 可选
|
173
|
+
calls: [
|
174
|
+
({key}, {type}) #type: call(object.method), fc(static function)
|
175
|
+
]
|
176
|
+
}
|
177
|
+
3. function:
|
178
|
+
1) object's method
|
179
|
+
{
|
180
|
+
key: {key}
|
181
|
+
ref: {ref} #可选
|
182
|
+
call: {call} #可选, object.{call}(...), if not {call}: object(...)
|
183
|
+
val: {val} # 可选, 不和args一起
|
184
|
+
args: [...] # 可选, 不和val一起
|
185
|
+
maps: [...] # 可选
|
186
|
+
data: {data} # 可选, 不和val, args, maps一起
|
187
|
+
# 如果是调用对象本身,并且对象没有任何输入参数,要写一个空的args或maps: {key:{key}, ref:{ref}, args:[]}
|
188
|
+
2) static function
|
189
|
+
{
|
190
|
+
key: {key}
|
191
|
+
import: {import}
|
192
|
+
call: {call}
|
193
|
+
val: {val} # 可选, 不和args一起
|
194
|
+
args: [...] # 可选, 不和val一起
|
195
|
+
maps: [...] # 可选
|
196
|
+
data: {data} # 可选, 不和val, args, maps一起
|
197
|
+
}
|
198
|
+
4. functions:
|
199
|
+
{
|
200
|
+
key: {key}
|
201
|
+
calls: [
|
202
|
+
...
|
203
|
+
]
|
204
|
+
}
|
205
|
+
|
206
|
+
"""
|
207
|
+
|
208
|
+
def help(lang = 'cn'):
|
209
|
+
global chinese, english
|
210
|
+
lang = lang.lower()
|
211
|
+
if lang in ['cn', 'ch']:
|
212
|
+
print(chinese)
|
213
|
+
else:
|
214
|
+
print(english)
|
215
|
+
|
216
|
+
pass
|
217
|
+
|
218
|
+
"""
|
219
|
+
|
220
|
+
{key: demo1, val: "hello world!"}
|
221
|
+
{key: demo2, val: <100.0, float>}
|
222
|
+
demo/val.py:
|
223
|
+
a = 10
|
224
|
+
class X:pass
|
225
|
+
b = X()
|
226
|
+
b.c = a
|
227
|
+
{key: demo3, import: demo.val, var: a}
|
228
|
+
{key: demo3, import: demo.val, var: b.c}
|
229
|
+
|
230
|
+
|
231
|
+
|
232
|
+
"""
|
@@ -7,12 +7,12 @@ impl in class
|
|
7
7
|
|
8
8
|
import io
|
9
9
|
# io.StringIO("asdf")
|
10
|
-
from
|
11
|
-
from
|
10
|
+
from .buff import *
|
11
|
+
from .fc import *
|
12
12
|
|
13
|
-
from
|
14
|
-
from
|
15
|
-
from
|
13
|
+
from .fmt_base import *
|
14
|
+
from .fmt_type import *
|
15
|
+
from .mg import *
|
16
16
|
|
17
17
|
|
18
18
|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
#coding=utf-8
|
2
|
-
from
|
3
|
-
from
|
4
|
-
from
|
2
|
+
from .base import *
|
3
|
+
from .fc_list import *
|
4
|
+
from .fc_set import *
|
5
5
|
|
6
|
-
from
|
6
|
+
from .fmt_base import *
|
7
7
|
|
8
8
|
"""
|
9
9
|
二元符<val, type>
|
@@ -7,9 +7,9 @@ impl in class
|
|
7
7
|
|
8
8
|
import io
|
9
9
|
# io.StringIO("asdf")
|
10
|
-
from
|
11
|
-
from
|
12
|
-
from
|
10
|
+
from .buff import *
|
11
|
+
from .fc import *
|
12
|
+
from .fmt_base import *
|
13
13
|
|
14
14
|
class Confz:
|
15
15
|
def fcs(self, fc, *args, **maps):
|
@@ -155,7 +155,7 @@ def loads(s):
|
|
155
155
|
|
156
156
|
pass
|
157
157
|
|
158
|
-
from
|
158
|
+
from .file import *
|
159
159
|
|
160
160
|
def loadfile(fp, coding = 'utf-8'):
|
161
161
|
return loads(fread(fp, coding))
|
@@ -7,13 +7,13 @@ impl in class
|
|
7
7
|
|
8
8
|
import io
|
9
9
|
# io.StringIO("asdf")
|
10
|
-
from
|
11
|
-
from
|
10
|
+
from .buff import *
|
11
|
+
from .fc import *
|
12
12
|
|
13
|
-
from
|
14
|
-
from
|
15
|
-
from
|
16
|
-
from
|
13
|
+
from .fmt_base import *
|
14
|
+
from .fmt_type import *
|
15
|
+
from .fmt_str import *
|
16
|
+
from .mg import *
|
17
17
|
|
18
18
|
class Buildz:
|
19
19
|
def __init__(self, bts= False):
|
@@ -0,0 +1,26 @@
|
|
1
|
+
#coding=utf-8
|
2
|
+
from .read import loads
|
3
|
+
import sys
|
4
|
+
def fetch(argv = None):
|
5
|
+
if argv is None:
|
6
|
+
argv = sys.argv[1:]
|
7
|
+
argv = [str(k) for k in argv]
|
8
|
+
s = " ".join(argv)
|
9
|
+
s = s.strip()
|
10
|
+
lrs = [["",""]]
|
11
|
+
if len(s)==0:
|
12
|
+
return None
|
13
|
+
if s[0] not in "([{":
|
14
|
+
lrs = ["{}", "[]"]
|
15
|
+
for l,r in lrs:
|
16
|
+
x = l+s+r
|
17
|
+
try:
|
18
|
+
return loads(x)
|
19
|
+
except:
|
20
|
+
pass
|
21
|
+
raise Exception("unable to fetch params")
|
22
|
+
|
23
|
+
pass
|
24
|
+
|
25
|
+
|
26
|
+
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: buildz
|
3
|
-
Version: 0.4.
|
3
|
+
Version: 0.4.4
|
4
4
|
Summary: a json-like file format's read and write code by python, and codes to read and product object from configure file in such format
|
5
5
|
Home-page: https://github.com/buildCodeZ/buildz
|
6
6
|
Author: Zzz
|
@@ -3,10 +3,7 @@ MANIFEST.in
|
|
3
3
|
README.md
|
4
4
|
setup.py
|
5
5
|
buildz/__init__.py
|
6
|
-
buildz/
|
7
|
-
buildz/base.py
|
8
|
-
buildz/build.py
|
9
|
-
buildz/confz.py
|
6
|
+
buildz/argx.py
|
10
7
|
buildz/dj.txt
|
11
8
|
buildz/keys.py
|
12
9
|
buildz/pyz.py
|
@@ -23,16 +20,8 @@ buildz/demo/ioc/test_conf/base.js
|
|
23
20
|
buildz/demo/ioc/test_conf/data1.js
|
24
21
|
buildz/demo/ioc/test_conf/data2.js
|
25
22
|
buildz/demo/ioc/test_conf/data3.js
|
26
|
-
buildz/demo/
|
27
|
-
buildz/demo/
|
28
|
-
buildz/demo/x/run.confz
|
29
|
-
buildz/demo/x/test.confz
|
30
|
-
buildz/demo/x/test.py
|
31
|
-
buildz/demo/x/testc.py
|
32
|
-
buildz/demo/x/testf.py
|
33
|
-
buildz/demo/x/testz.py
|
34
|
-
buildz/demo/x/value.confz
|
35
|
-
buildz/demo/x/x.py
|
23
|
+
buildz/demo/xf/test.js
|
24
|
+
buildz/demo/xf/test.py
|
36
25
|
buildz/ioc/__init__.py
|
37
26
|
buildz/ioc/init.py
|
38
27
|
buildz/ioc/ioc/base.py
|
@@ -43,6 +32,7 @@ buildz/ioc/ioc_deal/call.py
|
|
43
32
|
buildz/ioc/ioc_deal/calls.py
|
44
33
|
buildz/ioc/ioc_deal/demo.py
|
45
34
|
buildz/ioc/ioc_deal/env.py
|
35
|
+
buildz/ioc/ioc_deal/ioc.py
|
46
36
|
buildz/ioc/ioc_deal/mcall.py
|
47
37
|
buildz/ioc/ioc_deal/obj.py
|
48
38
|
buildz/ioc/ioc_deal/ovar.py
|
@@ -55,6 +45,7 @@ buildz/ioc/ioc_deal/conf/calls_defaults.js
|
|
55
45
|
buildz/ioc/ioc_deal/conf/calls_lists.js
|
56
46
|
buildz/ioc/ioc_deal/conf/deals.js
|
57
47
|
buildz/ioc/ioc_deal/conf/env_lists.js
|
48
|
+
buildz/ioc/ioc_deal/conf/ioc_lists.js
|
58
49
|
buildz/ioc/ioc_deal/conf/mcall_defaults.js
|
59
50
|
buildz/ioc/ioc_deal/conf/mcall_lists.js
|
60
51
|
buildz/ioc/ioc_deal/conf/obj_cst_lists.js
|
@@ -64,28 +55,45 @@ buildz/ioc/ioc_deal/conf/obj_set_lists.js
|
|
64
55
|
buildz/ioc/ioc_deal/conf/ovar_lists.js
|
65
56
|
buildz/ioc/ioc_deal/conf/ref_lists.js
|
66
57
|
buildz/ioc/ioc_deal/conf/var_lists.js
|
67
|
-
buildz/
|
68
|
-
buildz/
|
69
|
-
buildz/
|
70
|
-
buildz/
|
71
|
-
buildz/
|
72
|
-
buildz/
|
73
|
-
buildz/
|
74
|
-
buildz/
|
75
|
-
buildz/
|
76
|
-
buildz/
|
77
|
-
buildz/
|
78
|
-
buildz/
|
79
|
-
buildz/
|
80
|
-
buildz/
|
81
|
-
buildz/
|
82
|
-
buildz/
|
58
|
+
buildz/old_version/__init__.py
|
59
|
+
buildz/old_version/__main__.py
|
60
|
+
buildz/old_version/base.py
|
61
|
+
buildz/old_version/build.py
|
62
|
+
buildz/old_version/confz.py
|
63
|
+
buildz/old_version/keys.py
|
64
|
+
buildz/old_version/demo/x/demo.confz
|
65
|
+
buildz/old_version/demo/x/demo.py
|
66
|
+
buildz/old_version/demo/x/run.confz
|
67
|
+
buildz/old_version/demo/x/test.confz
|
68
|
+
buildz/old_version/demo/x/test.py
|
69
|
+
buildz/old_version/demo/x/testc.py
|
70
|
+
buildz/old_version/demo/x/testf.py
|
71
|
+
buildz/old_version/demo/x/testz.py
|
72
|
+
buildz/old_version/demo/x/value.confz
|
73
|
+
buildz/old_version/demo/x/x.py
|
74
|
+
buildz/old_version/xconfz/__init__.py
|
75
|
+
buildz/old_version/xconfz/base.py
|
76
|
+
buildz/old_version/xconfz/buff.py
|
77
|
+
buildz/old_version/xconfz/fc.py
|
78
|
+
buildz/old_version/xconfz/fc_item.py
|
79
|
+
buildz/old_version/xconfz/fc_list.py
|
80
|
+
buildz/old_version/xconfz/fc_map.py
|
81
|
+
buildz/old_version/xconfz/fc_set.py
|
82
|
+
buildz/old_version/xconfz/fc_str.py
|
83
|
+
buildz/old_version/xconfz/fc_type.py
|
84
|
+
buildz/old_version/xconfz/file.py
|
85
|
+
buildz/old_version/xconfz/fmt_base.py
|
86
|
+
buildz/old_version/xconfz/fmt_str.py
|
87
|
+
buildz/old_version/xconfz/fmt_type.py
|
88
|
+
buildz/old_version/xconfz/mg.py
|
89
|
+
buildz/old_version/xconfz/mg_fmt.py
|
83
90
|
buildz/xf/__init__.py
|
84
91
|
buildz/xf/file.py
|
85
92
|
buildz/xf/mapz.py
|
86
93
|
buildz/xf/read.py
|
87
94
|
buildz/xf/test_write.py
|
88
95
|
buildz/xf/write.py
|
96
|
+
buildz/xf/xargs.py
|
89
97
|
buildz/xf/loader/base.py
|
90
98
|
buildz/xf/loader/buffer.py
|
91
99
|
buildz/xf/loader/exp.py
|
buildz-0.4.3/buildz/xconfz/fc.py
DELETED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|