buildz 0.9.1__tar.gz → 0.9.3__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.
Files changed (458) hide show
  1. {buildz-0.9.1/buildz.egg-info → buildz-0.9.3}/PKG-INFO +1 -1
  2. buildz-0.9.3/buildz/_dz/conf.py +219 -0
  3. {buildz-0.9.1 → buildz-0.9.3}/buildz/_dz/mapz.py +24 -0
  4. {buildz-0.9.1 → buildz-0.9.3}/buildz/argx.py +2 -0
  5. {buildz-0.9.1 → buildz-0.9.3}/buildz/confz.py +16 -8
  6. buildz-0.9.3/buildz/jv/confz/Test.javap +25 -0
  7. buildz-0.9.3/buildz/jv/confz/build +7 -0
  8. buildz-0.9.3/buildz/jv/confz/build.bat +6 -0
  9. buildz-0.9.3/buildz/jv/confz/clean +5 -0
  10. buildz-0.9.3/buildz/jv/confz/clean.bat +5 -0
  11. buildz-0.9.3/buildz/jv/confz/com/buildz/Conf.javap +266 -0
  12. buildz-0.9.3/buildz/jv/confz/com/buildz/ConfUtil.javap +127 -0
  13. buildz-0.9.3/buildz/jv/confz/com/buildz/Confz.javap +144 -0
  14. buildz-0.9.3/buildz/jv/confz/com/buildz/Utils.javap +98 -0
  15. buildz-0.9.3/buildz/jv/confz/fps.js +1 -0
  16. buildz-0.9.3/buildz/jv/confz/jv +1 -0
  17. buildz-0.9.3/buildz/jv/confz/jv.bat +1 -0
  18. buildz-0.9.3/buildz/jv/confz/jvc +1 -0
  19. buildz-0.9.3/buildz/jv/confz/jvc.bat +1 -0
  20. buildz-0.9.3/buildz/jv/confz/run +1 -0
  21. buildz-0.9.3/buildz/jv/confz/run.bat +1 -0
  22. buildz-0.9.3/buildz/jv/confz/test.js +6 -0
  23. buildz-0.9.3/buildz/jv/jvp/defs.py +36 -0
  24. buildz-0.9.3/buildz/jv/jvp/dm.py +43 -0
  25. buildz-0.9.3/buildz/jv/jvp/fcs.py +97 -0
  26. buildz-0.9.3/buildz/jv/jvp/jsc.py +164 -0
  27. buildz-0.9.3/buildz/jv/jvp/main.py +73 -0
  28. buildz-0.9.3/buildz/jv/jvp/rn.py +32 -0
  29. buildz-0.9.3/buildz/jv/jvp/util.py +19 -0
  30. buildz-0.9.3/buildz/jv/note +1 -0
  31. {buildz-0.9.1/buildz/xf/java → buildz-0.9.3/buildz/jv/xf}/all.sh +7 -4
  32. buildz-0.9.3/buildz/tz/filediff.py +125 -0
  33. buildz-0.9.3/buildz/tz/time/__init__.py +15 -0
  34. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/__init__.py +0 -11
  35. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/pcxf.pyx +41 -12
  36. {buildz-0.9.1 → buildz-0.9.3/buildz.egg-info}/PKG-INFO +1 -1
  37. {buildz-0.9.1 → buildz-0.9.3}/buildz.egg-info/SOURCES.txt +33 -7
  38. {buildz-0.9.1 → buildz-0.9.3}/setup.py +1 -1
  39. buildz-0.9.1/buildz/_dz/conf.py +0 -124
  40. buildz-0.9.1/buildz/tz/time/__init__.py +0 -1
  41. {buildz-0.9.1 → buildz-0.9.3}/LICENSE +0 -0
  42. {buildz-0.9.1 → buildz-0.9.3}/MANIFEST.in +0 -0
  43. {buildz-0.9.1 → buildz-0.9.3}/README.md +0 -0
  44. {buildz-0.9.1 → buildz-0.9.3}/buildz/__init__.py +0 -0
  45. {buildz-0.9.1 → buildz-0.9.3}/buildz/__main__.py +0 -0
  46. {buildz-0.9.1 → buildz-0.9.3}/buildz/_dz/omapz.py +0 -0
  47. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/__init__.py +0 -0
  48. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/argz.py +0 -0
  49. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/callz.py +0 -0
  50. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/conf_argz.py +0 -0
  51. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/conf_callz.py +0 -0
  52. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/evalx.py +0 -0
  53. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/init.py +0 -0
  54. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/test.py +0 -0
  55. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz/test_call.py +0 -0
  56. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/__init__.py +0 -0
  57. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/argz.py +0 -0
  58. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/build.py +0 -0
  59. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/callz.py +0 -0
  60. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/evalx.py +0 -0
  61. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/test.py +0 -0
  62. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/test_obj.py +0 -0
  63. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/tests/conf.js +0 -0
  64. {buildz-0.9.1 → buildz-0.9.3}/buildz/argz_bk/testx.py +0 -0
  65. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/__init__.py +0 -0
  66. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/cache.py +0 -0
  67. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/config.py +0 -0
  68. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/dbs.py +0 -0
  69. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/deal.py +0 -0
  70. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/deal_list.py +0 -0
  71. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/deal_type.py +0 -0
  72. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/defs.py +0 -0
  73. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/factory.py +0 -0
  74. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/init.py +0 -0
  75. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/log.py +0 -0
  76. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/request.py +0 -0
  77. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/run.py +0 -0
  78. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/save.py +0 -0
  79. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/res/cache/cache.js +0 -0
  80. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/res/config/base.js +0 -0
  81. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/res/config/config.js +0 -0
  82. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/res/data/fp.js +0 -0
  83. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/res/data/item1.js +0 -0
  84. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/res/data/item2.js +0 -0
  85. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/res/data/test.js +0 -0
  86. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/test.py +0 -0
  87. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/test/xtest.py +0 -0
  88. {buildz-0.9.1 → buildz-0.9.3}/buildz/auto/verify.py +0 -0
  89. {buildz-0.9.1 → buildz-0.9.3}/buildz/base.py +0 -0
  90. {buildz-0.9.1 → buildz-0.9.3}/buildz/cachez/__init__.py +0 -0
  91. {buildz-0.9.1 → buildz-0.9.3}/buildz/cachez/cache.py +0 -0
  92. {buildz-0.9.1 → buildz-0.9.3}/buildz/cmd.py +0 -0
  93. {buildz-0.9.1 → buildz-0.9.3}/buildz/confz_test/argx.js +0 -0
  94. {buildz-0.9.1 → buildz-0.9.3}/buildz/confz_test/conf.js +0 -0
  95. {buildz-0.9.1 → buildz-0.9.3}/buildz/confz_test/test.js +0 -0
  96. {buildz-0.9.1 → buildz-0.9.3}/buildz/confz_test/test.py +0 -0
  97. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/__init__.py +0 -0
  98. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/__main__.py +0 -0
  99. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/__init__.py +0 -0
  100. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/basez.py +0 -0
  101. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/clickhousez.py +0 -0
  102. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/lib/readme +0 -0
  103. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/mysqlz.py +0 -0
  104. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/oraclez.py +0 -0
  105. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/orm.py +0 -0
  106. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/postgresqlz.py +0 -0
  107. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/sqlite3z.py +0 -0
  108. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/dv/structz.py +0 -0
  109. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/install.txt +0 -0
  110. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/run.conf +0 -0
  111. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/runz.py +0 -0
  112. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/sc.py +0 -0
  113. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/subrun.py +0 -0
  114. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/subsc.py +0 -0
  115. {buildz-0.9.1 → buildz-0.9.3}/buildz/db/tls.py +0 -0
  116. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/ioc/deal.py +0 -0
  117. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/ioc/help.py +0 -0
  118. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/myers/deal.py +0 -0
  119. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/myers/help.py +0 -0
  120. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/conf/ioc.js +0 -0
  121. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/conf/main.js +0 -0
  122. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/conf/myers.js +0 -0
  123. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/conf/search.js +0 -0
  124. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/conf/xf.js +0 -0
  125. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/help/default.js +0 -0
  126. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/help/ioc.js +0 -0
  127. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/help/myers.js +0 -0
  128. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/help/search.js +0 -0
  129. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/help/xf.js +0 -0
  130. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/res/test.js +0 -0
  131. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/search/deal.py +0 -0
  132. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/search/help.py +0 -0
  133. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/test.py +0 -0
  134. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/xf/deal.py +0 -0
  135. {buildz-0.9.1 → buildz-0.9.3}/buildz/demo/xf/help.py +0 -0
  136. {buildz-0.9.1 → buildz-0.9.3}/buildz/dz.py +0 -0
  137. {buildz-0.9.1 → buildz-0.9.3}/buildz/evalz/__init__.py +0 -0
  138. {buildz-0.9.1 → buildz-0.9.3}/buildz/evalz/evalz.py +0 -0
  139. {buildz-0.9.1 → buildz-0.9.3}/buildz/evalz/res/default.js +0 -0
  140. {buildz-0.9.1 → buildz-0.9.3}/buildz/evalz/test.py +0 -0
  141. {buildz-0.9.1 → buildz-0.9.3}/buildz/fz/__init__.py +0 -0
  142. {buildz-0.9.1 → buildz-0.9.3}/buildz/fz/dirz.py +0 -0
  143. {buildz-0.9.1 → buildz-0.9.3}/buildz/fz/fhs.py +0 -0
  144. {buildz-0.9.1 → buildz-0.9.3}/buildz/fz/fio.py +0 -0
  145. {buildz-0.9.1 → buildz-0.9.3}/buildz/fz/lsf.py +0 -0
  146. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/test/analyze.py +0 -0
  147. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/test/demo.py +0 -0
  148. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/test/report.txt +0 -0
  149. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/test/take_gpu_mem.py +0 -0
  150. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/test/test_atten_demo.py +0 -0
  151. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/test/test_linear_demo.py +0 -0
  152. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/test/test_multi_demo.py +0 -0
  153. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/test/test_resnet_demo.py +0 -0
  154. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/torch/__init__.py +0 -0
  155. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/torch/dict_middle.py +0 -0
  156. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/torch/multi_dict_middle.py +0 -0
  157. {buildz-0.9.1 → buildz-0.9.3}/buildz/gpuz/torch/seq_middle.py +0 -0
  158. {buildz-0.9.1 → buildz-0.9.3}/buildz/html/__init__.py +0 -0
  159. {buildz-0.9.1 → buildz-0.9.3}/buildz/html/test/demo.html +0 -0
  160. {buildz-0.9.1 → buildz-0.9.3}/buildz/html/test/test.py +0 -0
  161. {buildz-0.9.1 → buildz-0.9.3}/buildz/html/xml.py +0 -0
  162. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/__init__.py +0 -0
  163. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/base.py +0 -0
  164. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/init.py +0 -0
  165. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc/base.py +0 -0
  166. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc/conf.py +0 -0
  167. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc/confs.py +0 -0
  168. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc/decorator.py +0 -0
  169. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc/loads.py +0 -0
  170. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc/single.py +0 -0
  171. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/base.py +0 -0
  172. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/branch.py +0 -0
  173. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/call.py +0 -0
  174. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/calls.py +0 -0
  175. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
  176. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
  177. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
  178. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
  179. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
  180. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
  181. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
  182. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
  183. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
  184. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
  185. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
  186. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
  187. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
  188. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
  189. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
  190. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
  191. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
  192. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
  193. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
  194. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
  195. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
  196. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
  197. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
  198. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
  199. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
  200. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/deal.py +0 -0
  201. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/demo.py +0 -0
  202. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/env.py +0 -0
  203. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/init.py +0 -0
  204. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/ioc.py +0 -0
  205. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/iocf.py +0 -0
  206. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/join.py +0 -0
  207. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/list.py +0 -0
  208. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/map.py +0 -0
  209. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/mcall.py +0 -0
  210. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/obj.py +0 -0
  211. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/ovar.py +0 -0
  212. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/ref.py +0 -0
  213. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/refs.py +0 -0
  214. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/val.py +0 -0
  215. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/var.py +0 -0
  216. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/ioc_deal/xfile.py +0 -0
  217. {buildz-0.9.1 → buildz-0.9.3}/buildz/ioc/wrap.py +0 -0
  218. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/__init__.py +0 -0
  219. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/base.py +0 -0
  220. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf/base.py +0 -0
  221. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf/conf.py +0 -0
  222. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf/mg.py +0 -0
  223. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf/unit.py +0 -0
  224. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf/up.py +0 -0
  225. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/attr.py +0 -0
  226. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/base.py +0 -0
  227. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/call.py +0 -0
  228. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/cvar.py +0 -0
  229. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/deal.py +0 -0
  230. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/env.py +0 -0
  231. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/ioc.py +0 -0
  232. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/method.py +0 -0
  233. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/obj.py +0 -0
  234. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/ref.py +0 -0
  235. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/conf_deal/val.py +0 -0
  236. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/init.py +0 -0
  237. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/__init__.py +0 -0
  238. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/base.py +0 -0
  239. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/builds.py +0 -0
  240. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/confs.py +0 -0
  241. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/datas.py +0 -0
  242. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/dataset.py +0 -0
  243. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/encapes.py +0 -0
  244. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/envs.py +0 -0
  245. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/ids.py +0 -0
  246. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/init.py +0 -0
  247. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/mg.py +0 -0
  248. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/single.py +0 -0
  249. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/sys_envs.py +0 -0
  250. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/tdata.py +0 -0
  251. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/tdict.py +0 -0
  252. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/unit.py +0 -0
  253. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc/vars.py +0 -0
  254. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc_deal/base.py +0 -0
  255. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc_deal/deal.py +0 -0
  256. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc_deal/ioc.py +0 -0
  257. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc_deal/obj.py +0 -0
  258. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc_deal/ref.py +0 -0
  259. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/ioc_deal/val.py +0 -0
  260. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/test/test.py +0 -0
  261. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/wrap/base.py +0 -0
  262. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/wrap/default_wraps.py +0 -0
  263. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/wrap/env.py +0 -0
  264. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/wrap/obj.py +0 -0
  265. {buildz-0.9.1 → buildz-0.9.3}/buildz/iocz/wrap/wraps.py +0 -0
  266. {buildz-0.9.1/buildz/xf/java → buildz-0.9.3/buildz/jv/xf}/Test.java +0 -0
  267. {buildz-0.9.1/buildz/xf/java → buildz-0.9.3/buildz/jv/xf}/com/buildz/xf/Args.java +0 -0
  268. {buildz-0.9.1/buildz/xf/java → buildz-0.9.3/buildz/jv/xf}/com/buildz/xf/Loader.java +0 -0
  269. {buildz-0.9.1/buildz/xf/java → buildz-0.9.3/buildz/jv/xf}/com/buildz/xf/LoaderJNI.java +0 -0
  270. {buildz-0.9.1/buildz/xf/java → buildz-0.9.3/buildz/jv/xf}/com/buildz/xf/cpp/com_buildz_xf_LoaderJNI.h +0 -0
  271. {buildz-0.9.1/buildz/xf/java → buildz-0.9.3/buildz/jv/xf}/com/buildz/xf/cpp/jxf.cpp +0 -0
  272. {buildz-0.9.1 → buildz-0.9.3}/buildz/logz.py +0 -0
  273. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/__init__.py +0 -0
  274. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/mhttp/__init__.py +0 -0
  275. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/mhttp/caps.py +0 -0
  276. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/mhttp/gateway.py +0 -0
  277. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/mhttp/mhttp.py +0 -0
  278. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/mhttp/mhttps.py +0 -0
  279. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/mhttp/proxy.py +0 -0
  280. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/mhttp/record.py +0 -0
  281. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/sslz/__init__.py +0 -0
  282. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/sslz/gen.py +0 -0
  283. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/sslz/gen.pyi +0 -0
  284. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/tcp/__init__.py +0 -0
  285. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/tcp/__main__.py +0 -0
  286. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/tcp/middle.py +0 -0
  287. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/test/__main__.py +0 -0
  288. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/test/test.py +0 -0
  289. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/test/test_cli.py +0 -0
  290. {buildz-0.9.1 → buildz-0.9.3}/buildz/netz/test/test_gw.py +0 -0
  291. {buildz-0.9.1 → buildz-0.9.3}/buildz/pathz.py +0 -0
  292. {buildz-0.9.1 → buildz-0.9.3}/buildz/pyz.py +0 -0
  293. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/__main__.py +0 -0
  294. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/lst.py +0 -0
  295. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/oldversion/run.py +0 -0
  296. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/oldversion/thrun.py +0 -0
  297. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/subchild.py +0 -0
  298. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/subrun.py +0 -0
  299. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/test/inc.py +0 -0
  300. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/test/x.js +0 -0
  301. {buildz-0.9.1 → buildz-0.9.3}/buildz/sc/test/x.py +0 -0
  302. {buildz-0.9.1 → buildz-0.9.3}/buildz/threads/__init__.py +0 -0
  303. {buildz-0.9.1 → buildz-0.9.3}/buildz/threads/impl.py +0 -0
  304. {buildz-0.9.1 → buildz-0.9.3}/buildz/threads/pool.py +0 -0
  305. {buildz-0.9.1 → buildz-0.9.3}/buildz/threads/test.py +0 -0
  306. {buildz-0.9.1 → buildz-0.9.3}/buildz/tls.py +0 -0
  307. {buildz-0.9.1 → buildz-0.9.3}/buildz/tools.py +0 -0
  308. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/__init__.py +0 -0
  309. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/code.py +0 -0
  310. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/myers_diff.py +0 -0
  311. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/test_xfind.py +0 -0
  312. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/time/timez.py +0 -0
  313. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/tio/__init__.py +0 -0
  314. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/tio/base.py +0 -0
  315. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/tio/getch.py +0 -0
  316. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/tio/lx.py +0 -0
  317. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/tio/test.py +0 -0
  318. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/tio/win.py +0 -0
  319. {buildz-0.9.1 → buildz-0.9.3}/buildz/tz/xfind.py +0 -0
  320. {buildz-0.9.1 → buildz-0.9.3}/buildz/unittest/__init__.py +0 -0
  321. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/__main__.py +0 -0
  322. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/base.py +0 -0
  323. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/code.py +0 -0
  324. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/Makefile +0 -0
  325. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/README.txt +0 -0
  326. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/clean.py +0 -0
  327. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/base.h +0 -0
  328. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/base_deal.h +0 -0
  329. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/buffer.cpp +0 -0
  330. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/buffer.h +0 -0
  331. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/callback.h +0 -0
  332. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/callback_demo.cpp +0 -0
  333. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/callback_demo.h +0 -0
  334. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/code.cpp +0 -0
  335. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/code.h +0 -0
  336. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/cxf.h +0 -0
  337. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/dict.cpp +0 -0
  338. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/dict.h +0 -0
  339. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/kv.h +0 -0
  340. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/list.cpp +0 -0
  341. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/list.h +0 -0
  342. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/listdict.cpp +0 -0
  343. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/listdict.h +0 -0
  344. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/lr.cpp +0 -0
  345. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/lr.h +0 -0
  346. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/lrval.cpp +0 -0
  347. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/lrval.h +0 -0
  348. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/next.cpp +0 -0
  349. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/next.h +0 -0
  350. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/reval.h +0 -0
  351. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/spt.cpp +0 -0
  352. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/spt.h +0 -0
  353. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/str.cpp +0 -0
  354. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/deal/str.h +0 -0
  355. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/exp.h +0 -0
  356. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/init.cpp +0 -0
  357. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/init.h +0 -0
  358. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/item.h +0 -0
  359. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/mg.cpp +0 -0
  360. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/mg.h +0 -0
  361. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/loaderz/test.cpp +0 -0
  362. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/pc.cpp +0 -0
  363. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/pc.h +0 -0
  364. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/setup.py +0 -0
  365. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/setup_mingw32.py +0 -0
  366. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/cpp/tstcxf.py +0 -0
  367. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/file.py +0 -0
  368. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/base.py +0 -0
  369. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/buffer.py +0 -0
  370. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/listz.py +0 -0
  371. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/lr.py +0 -0
  372. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/lrval.py +0 -0
  373. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/mapz.py +0 -0
  374. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/nextz.py +0 -0
  375. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/reval.py +0 -0
  376. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/setz.py +0 -0
  377. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/spc.py +0 -0
  378. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/spt.py +0 -0
  379. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/deal/strz.py +0 -0
  380. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/exp.py +0 -0
  381. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/item.py +0 -0
  382. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/mg.py +0 -0
  383. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loader/pos.py +0 -0
  384. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/base.py +0 -0
  385. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/buffer.py +0 -0
  386. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/listmapz.py +0 -0
  387. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/listz.py +0 -0
  388. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/lr.py +0 -0
  389. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/lrval.py +0 -0
  390. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/mapz.py +0 -0
  391. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/nextz.py +0 -0
  392. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/reval.py +0 -0
  393. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/setz.py +0 -0
  394. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/spt.py +0 -0
  395. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/deal/strz.py +0 -0
  396. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/exp.py +0 -0
  397. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/item.py +0 -0
  398. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/mg.py +0 -0
  399. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/pos.py +0 -0
  400. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/test.py +0 -0
  401. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz/test1.py +0 -0
  402. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/base.py +0 -0
  403. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/buffer.py +0 -0
  404. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/listmapz.py +0 -0
  405. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/listz.py +0 -0
  406. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/lr.py +0 -0
  407. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/lrval.py +0 -0
  408. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/mapz.py +0 -0
  409. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/nextz.py +0 -0
  410. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/reval.py +0 -0
  411. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/setz.py +0 -0
  412. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/spt.py +0 -0
  413. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/deal/strz.py +0 -0
  414. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/exp.py +0 -0
  415. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/item.py +0 -0
  416. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/mg.py +0 -0
  417. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/pos.py +0 -0
  418. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/test.py +0 -0
  419. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/loaderz_nexp/test1.py +0 -0
  420. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/mapz.py +0 -0
  421. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/read.py +0 -0
  422. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/readz.py +0 -0
  423. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/readz_nexp.py +0 -0
  424. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/stack.py +0 -0
  425. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/write.py +0 -0
  426. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/base.py +0 -0
  427. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/conf.py +0 -0
  428. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/deal/jsonval.py +0 -0
  429. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/deal/listmapz.py +0 -0
  430. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/deal/listz.py +0 -0
  431. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/deal/mapz.py +0 -0
  432. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/deal/reval.py +0 -0
  433. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/deal/strz.py +0 -0
  434. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/itemz.py +0 -0
  435. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writer/mg.py +0 -0
  436. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/base.py +0 -0
  437. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/conf.py +0 -0
  438. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/deal/jsonval.py +0 -0
  439. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/deal/listmapz.py +0 -0
  440. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/deal/listz.py +0 -0
  441. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/deal/mapz.py +0 -0
  442. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/deal/reval.py +0 -0
  443. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/deal/strz.py +0 -0
  444. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/itemz.py +0 -0
  445. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/mg.py +0 -0
  446. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/test.py +0 -0
  447. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writerz/testx.py +0 -0
  448. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/writez.py +0 -0
  449. {buildz-0.9.1 → buildz-0.9.3}/buildz/xf/xargs.py +0 -0
  450. {buildz-0.9.1 → buildz-0.9.3}/buildz/xz/__init__.py +0 -0
  451. {buildz-0.9.1 → buildz-0.9.3}/buildz/xz/conf.js +0 -0
  452. {buildz-0.9.1 → buildz-0.9.3}/buildz/xz/data.js +0 -0
  453. {buildz-0.9.1 → buildz-0.9.3}/buildz/xz/test.py +0 -0
  454. {buildz-0.9.1 → buildz-0.9.3}/buildz/xz/trs.py +0 -0
  455. {buildz-0.9.1 → buildz-0.9.3}/buildz.egg-info/dependency_links.txt +0 -0
  456. {buildz-0.9.1 → buildz-0.9.3}/buildz.egg-info/top_level.txt +0 -0
  457. {buildz-0.9.1 → buildz-0.9.3}/notes/notes.txt +0 -0
  458. {buildz-0.9.1 → buildz-0.9.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.9.1
3
+ Version: 0.9.3
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,219 @@
1
+
2
+ from . import mapz
3
+ from buildz import xf
4
+ from ..base import Base
5
+ import os
6
+ def dzkeys(key, spt):
7
+ if key is None:
8
+ return []
9
+ # return mapz.keys(key, spt)
10
+ if type(key)==str:
11
+ key = key.split(spt)
12
+ if type(key) not in (list, tuple):
13
+ key = [key]
14
+ return key
15
+ class Conf(Base):
16
+ def val(self):
17
+ return self.get_conf()
18
+ def top(self, domain = None):
19
+ root = self.root or self
20
+ if domain is not None:
21
+ root = root(domain)
22
+ return root
23
+ # return self.root or self
24
+ def get_conf(self):
25
+ if self.domain:
26
+ key = self.domain
27
+ obj = self.root or self
28
+ if self.domain:
29
+ return obj._get(self.domain)
30
+ return obj.conf
31
+ def str(self):
32
+ return str(self.get_conf())
33
+ def call(self, domain=None):
34
+ if domain is None:
35
+ return self.top()
36
+ if self.domain:
37
+ domain = self.domain+self.spt+domain
38
+ obj = self.root or self
39
+ return Conf(self.spt, self.spts, domain, obj)
40
+ def init(self, spt='.', spts=',', domain=None, root = None):
41
+ self.spt = spt
42
+ self.spts = spts
43
+ self.domain = domain
44
+ self.root = root
45
+ if root is None:
46
+ self.conf = {}
47
+ self.stacks = {}
48
+ self._links = [{},None]
49
+ self.dr_bind('_get', 'get')
50
+ self.dr_bind('_hget', 'hget')
51
+ self.dr_bind('_set', 'set')
52
+ self.dr_bind('_has', 'has')
53
+ self.dr_bind('_remove', 'remove')
54
+ self.dr_bind('_link', 'link')
55
+ self.dr_bind('_unlink', 'unlink')
56
+ self.dr_bind('_push', 'push')
57
+ self.dr_bind('_pop', 'pop')
58
+ self.dr_bind('_stack_set', 'stack_set')
59
+ self.dr_bind('_stack_unset', 'stack_unset')
60
+ self.fcs_bind('get', 'gets', False, True)
61
+ self.fcs_bind('set', 'sets', True)
62
+ self.fcs_bind('remove', 'removes')
63
+ self.fcs_bind('push', 'pushs', True)
64
+ self.fcs_bind('pop', 'pops')
65
+ self.fcs_bind('stack_set', 'stack_sets', True)
66
+ self.fcs_bind('stack_unset', 'stack_unsets')
67
+ self.fcs_bind('link', 'links', True)
68
+ self.fcs_bind('unlink', 'unlinks')
69
+ for name,rename in zip("stack_set,stack_unset,stack_sets,stack_unsets".split(","), "tmp_set,tmp_unset,tmp_sets,tmp_unsets".split(',')):
70
+ setattr(self, rename, getattr(self, name))
71
+ self.have_all = self.has_all
72
+ def clean(self):
73
+ obj = self.root or self
74
+ obj.conf = {}
75
+ obj.stacks = {}
76
+ obj._links = [{}, None]
77
+ return self
78
+ def dkey(self, key):
79
+ if self.domain:
80
+ key = self.domain+self.spt+key
81
+ return key
82
+ def update(self, conf, flush = 1, replace=1, visit_list=0):
83
+ if self.domain:
84
+ ks = dzkeys(self.domain, self.spt)
85
+ tmp = {}
86
+ mapz.dset(tmp, ks, conf)
87
+ conf = tmp
88
+ if self.root:
89
+ return self.root.update(conf, flush, replace, visit_list)
90
+ if flush:
91
+ conf = xf.flush_maps(conf, lambda x:x.split(self.spt) if type(x)==str else [x], visit_list)
92
+ xf.fill(conf, self.conf, replace=replace)
93
+ return self
94
+ def dr_bind(self, fn, wfn):
95
+ def wfc(key,*a,**b):
96
+ key = self.dkey(key)
97
+ obj = self.root or self
98
+ fc = getattr(obj, fn)
99
+ return fc(key, *a, **b)
100
+ setattr(self, wfn, wfc)
101
+ def fcs_bind(self, fn, wfn, align=False, null_default= False):
102
+ def wfc(keys, *objs, **maps):
103
+ keys = self.spts_ks(keys)
104
+ fc = getattr(self, fn)
105
+ rst = []
106
+ for i in range(len(keys)):
107
+ if i<len(objs):
108
+ val = fc(keys[i], objs[i], **maps)
109
+ else:
110
+ if align:
111
+ raise Exception(f"not val[{i}]")
112
+ if null_default:
113
+ val = fc(keys[i], None, **maps)
114
+ else:
115
+ val = fc(keys[i], **maps)
116
+ rst.append(val)
117
+ return rst
118
+ setattr(self, wfn, wfc)
119
+ def _stack_set(self, key, val):
120
+ if key not in self.stacks:
121
+ self.stacks[key] = []
122
+ self.stacks[key] = [val]
123
+ def _stack_unset(self, key, val):
124
+ if key not in self.stacks:
125
+ return False
126
+ del self.stacks[key]
127
+ return True
128
+ def _push(self, key, val):
129
+ if key not in self.stacks:
130
+ self.stacks[key] = []
131
+ self.stacks[key].append(val)
132
+ def _pop(self, key):
133
+ if key not in self.stacks:
134
+ return False
135
+ stk = self.stacks[key]
136
+ if len(stk)==0:
137
+ return False
138
+ stk.pop(-1)
139
+ return True
140
+ def _link(self, src, target):
141
+ keys = dzkeys(src, self.spt)
142
+ links = self._links
143
+ for key in keys:
144
+ if key not in links[0]:
145
+ links[0][key] = [{},None]
146
+ links = links[0][key]
147
+ links[1] = target
148
+ def _unlink(self, key):
149
+ keys = dzkeys(key, self.spt)
150
+ links = self._links
151
+ for key in keys:
152
+ if key not in links[0]:
153
+ return False
154
+ links = links[0][key]
155
+ links[1] = None
156
+ return True
157
+ def link_match(self, keys):
158
+ obj = self.root or self
159
+ links = obj._links
160
+ deep = 0
161
+ for key in keys:
162
+ if key not in links[0]:
163
+ break
164
+ deep+=1
165
+ links = links[0][key]
166
+ return links[1], deep
167
+ def _set(self, key, val):
168
+ keys = dzkeys(key, self.spt)
169
+ mapz.dset(self.conf, keys, val)
170
+ def _hget(self, key, default=None, loop=-1):
171
+ #print(f"_hget: {key}, {default}, {loop}")
172
+ stk = mapz.get(self.stacks, key, [])
173
+ if len(stk)>0:
174
+ return stk[-1],1
175
+ keys = dzkeys(key, self.spt)
176
+ val, find = mapz.dget(self.conf, keys, default)
177
+ if find or loop==0:
178
+ return val, find
179
+ lnk, deep = self.link_match(keys)
180
+ if lnk is None:
181
+ return val, find
182
+ keys = keys[deep:]
183
+ keys = self.spt.join(keys)
184
+ key = lnk+self.spt+keys
185
+ if loop>0:
186
+ loop-=1
187
+ return self._hget(key, default, loop)
188
+ def _get(self, key, default=None, loop=-1):
189
+ return self._hget(key, default,loop)[0]
190
+ keys = dzkeys(key, self.spt)
191
+ return mapz.dget(self.conf, keys, default)[0]
192
+ def _remove(self, key):
193
+ keys = dzkeys(key, self.spt)
194
+ return mapz.dremove(self.conf, keys)
195
+ def _has(self, key, loop=0):
196
+ return self._hget(key, None, loop)[1]
197
+ keys = dzkeys(key, self.spt)
198
+ return mapz.dhas(self.conf, keys)
199
+ def spts_ks(self, keys):
200
+ keys = dzkeys(keys, self.spts)
201
+ keys = [k.strip() if type(k) == str else k for k in keys]
202
+ return keys
203
+ def g(self, **maps):
204
+ rst = [self.get(k, v) for k,v in maps.items()]
205
+ if len(rst)==1:
206
+ rst = rst[0]
207
+ return rst
208
+ def s(self, **maps):
209
+ [self.set(k,v) for k,v in maps.items()]
210
+ def has_all(self, keys, loop = 0):
211
+ keys = self.spts_ks(keys)
212
+ rst = [1-self.has(key, loop) for key in keys]
213
+ return sum(rst)==0
214
+ def has_any(self, keys, loop=0):
215
+ keys = self.spts_ks(keys)
216
+ for key in keys:
217
+ if self.has(key, loop):
218
+ return True
219
+ return False
@@ -213,6 +213,30 @@ def dget(maps, keys, default = None):
213
213
  return maps,1
214
214
 
215
215
  pass
216
+ def dmatch(maps, keys, fc_map = lambda x:x):
217
+ if type(keys) not in (list,tuple):
218
+ keys = [keys]
219
+ deep=0
220
+ src = maps
221
+ for key in keys:
222
+ find = 1
223
+ maps = fc_map(maps)
224
+ if type(maps)==dict:
225
+ find = key in maps
226
+ elif type(maps) in (list, tuple):
227
+ try:
228
+ key = int(key)
229
+ except:
230
+ key = len(maps)
231
+ find = key<len(maps)
232
+ else:
233
+ find = False
234
+ if not find:
235
+ break
236
+ deep+=1
237
+ src = maps[key]
238
+ return src,deep
239
+
216
240
  def dremove(maps, keys):
217
241
  if type(keys) not in (list,tuple):
218
242
  keys = [keys]
@@ -36,6 +36,8 @@ class Fetch:
36
36
  return rst
37
37
  def __call__(self, argv = None):
38
38
  args, maps = fetch(argv)
39
+ return self.fetch(args, maps)
40
+ def fetch(self, args, maps):
39
41
  rst = {}
40
42
  for i in range(len(args)):
41
43
  if i >= len(self.args):
@@ -29,30 +29,38 @@ def calls(conf):
29
29
  root = conf.top()
30
30
  if type(calls)==dict:
31
31
  target = dz.g(calls, target='run')
32
- if target in calls:
33
- calls = dz.get(calls, target, [])
34
- else:
35
- calls = root.get(target, [])
32
+ calls = dz.get(calls, target, [])
33
+ # if target in calls:
34
+ # calls = dz.get(calls, target, [])
35
+ # else:
36
+ # calls = root.get(target, [])
36
37
  if type(calls)==dict:
37
- dm, init, calls = dz.g(calls, domain=None, init = {},calls=[])
38
+ dm, init, calls, init_cover = dz.g(calls, domain=None, init = {},calls=[], init_cover=False)
38
39
  if len(init)>0:
39
40
  init_conf = conf.top("confz.init")
40
41
  if dm is not None:
41
42
  init_conf = init_conf(dm)
42
- init_conf.update(init, replace=0)
43
+ init_conf.update(init, replace=init_cover)
43
44
  root.update(init_conf.val())
44
45
  if type(calls)==str:
45
46
  calls = [calls]
46
47
  for key in calls:
47
48
  assert conf.has(key), f"not has key: '{key}'"
48
49
  simple(conf(key))
50
+ return conf
49
51
  def simple(conf):
50
52
  fc = conf.get('fc')
53
+ up = conf.get('up', loop=0)
54
+ if up:
55
+ conf().link(conf.domain, up)
51
56
  if fc is None:
52
57
  fc = calls
53
58
  else:
59
+ # import time
60
+ # print(time.strftime(f"%Y-%m-%d %H:%M:%S start load: {fc}"))
54
61
  #assert fc is not None
55
62
  fc = pyz.load(fc)
63
+ # print(time.strftime(f"%Y-%m-%d %H:%M:%S done load: {fc}"))
56
64
  return fc(conf)
57
65
  def get_sys_conf(conf = []):
58
66
  if type(conf) == str:
@@ -75,8 +83,8 @@ def run(dp = None, fp = None, init_conf = {}):
75
83
  init = conf.get(conf.get("key.init", "init"), {})
76
84
  conf = load_conf(conf, dp).update(init)
77
85
  conf.set("confz.init", init)
78
- simple(conf)
79
- return conf
86
+ return simple(conf)
87
+ #return conf
80
88
  def test():
81
89
  run()
82
90
  pyz.lc(locals(), test)
@@ -0,0 +1,25 @@
1
+
2
+ import com.buildz.xf.Loader;
3
+ import java.util.Map;
4
+ import com.buildz.Confz;
5
+ import com.buildz.Conf;
6
+ public class Test {
7
+ public static Object test(Conf conf) {
8
+ System.out.println("call in test:"+conf.toString());
9
+ return null;
10
+ }
11
+ public static void main(String[] args)throws Exception {
12
+ Object obj = Confz.run("fps.js");
13
+ System.out.println("obj:"+obj);
14
+ String s = "{a.b.c=d,x=y,test.x.y..z=123}";
15
+ Loader jni = new Loader();
16
+ Map rst = (Map)jni.loads(s);
17
+ Conf conf = new Conf();
18
+ System.out.println("conf:"+conf);
19
+ conf.update(rst);
20
+ //conf.set("test.x.y..z", 123);
21
+ Conf sub = conf.sub("test");
22
+ System.out.println("sub:"+sub);
23
+
24
+ }
25
+ }
@@ -0,0 +1,7 @@
1
+ ./clean
2
+ python -m buildz.jv.jvp.main .
3
+ ./jvc com/buildz/Utils.java
4
+ ./jvc com/buildz/ConfUtil.java
5
+ ./jvc com/buildz/Conf.java
6
+ ./jvc com/buildz/Confz.java
7
+ ./jvc Test.java
@@ -0,0 +1,6 @@
1
+ python -m buildz.jv.jvp.main .
2
+ jvc.bat com/buildz/Utils.java
3
+ jvc.bat com/buildz/ConfUtil.java
4
+ jvc.bat com/buildz/Conf.java
5
+ jvc.bat com/buildz/Confz.java
6
+ jvc.bat Test.java
@@ -0,0 +1,5 @@
1
+ rm ./com/buildz/*.class
2
+ rm ./com/buildz/xf/*.class
3
+ rm ./com/buildz/*.java
4
+ rm ./*.class
5
+ rm ./*.java
@@ -0,0 +1,5 @@
1
+ del com\buildz\*.class
2
+ del com\buildz\xf\*.class
3
+ del *.class
4
+ del *.java
5
+ del com\buildz\*.java
@@ -0,0 +1,266 @@
1
+ package com.buildz;
2
+
3
+ import java.util.Map;
4
+ import java.util.HashMap;
5
+ import java.util.List;
6
+ import java.util.ArrayList;
7
+ import java.util.Arrays;
8
+ class Link{
9
+ public Map<String, Link> maps=new HashMap<>();
10
+ public String val=null;
11
+ public Link(){}
12
+ }
13
+ class LinkMatch{
14
+ public String val;
15
+ public int deep;
16
+ public LinkMatch(String val, int deep){
17
+ this.val = val;
18
+ this.deep=deep;
19
+ }
20
+ }
21
+ public class Conf{
22
+ public static Object[] args(Object... vars){
23
+ return vars;
24
+ }
25
+ public String toString(){
26
+ return val().toString();
27
+ }
28
+ public <T> T getObj(Class<T> targetClass) {
29
+ try{
30
+ return ConfUtil.fill(this, targetClass);
31
+ }catch (Exception exp){
32
+ throw new RuntimeException(""+exp);
33
+ }
34
+ }
35
+ public Map<String, Object> conf=null;
36
+ Conf root=null;
37
+ Map<String, List> stacks=null;
38
+ Link _links=null;
39
+ public String spt;
40
+ public String spts;
41
+ public String domain;
42
+ <<default(".", ",", null, null)||Conf>>
43
+ public Conf(String spt, String spts, String domain, Conf root) {
44
+ this.spt = spt;
45
+ this.spts = spts;
46
+ this.domain = domain;
47
+ this.root = root;
48
+ if (root==null) {
49
+ conf = new HashMap<>();
50
+ stacks = new HashMap<>();
51
+ _links = new Link();
52
+ }
53
+ }
54
+ <<default(null)||top>>
55
+ public Conf top(String domain){
56
+ Conf obj = this;
57
+ if (root!=null)obj =root;
58
+ if (domain!=null) {
59
+ obj = obj.sub(domain);
60
+ }
61
+ return obj;
62
+ }
63
+ <<rename(val)||getConf>>
64
+ public Map getConf(){
65
+ Conf obj = top();
66
+ if (domain!=null) {
67
+ return (Map)obj._get(domain);
68
+ }
69
+ return obj.conf;
70
+ }
71
+ public Conf sub(String domain) {
72
+ domain = dmKey(domain);
73
+ root = top();
74
+ return new Conf(spt, spts, domain, root);
75
+ }
76
+ public Conf clean(){
77
+ if (root!=null) {
78
+ root.clean();
79
+ return this;
80
+ }
81
+ conf = new HashMap<>();
82
+ stacks = new HashMap<>();
83
+ _links = new Link();
84
+ return this;
85
+ }
86
+ public String dmKey(String key){
87
+ if (domain !=null) {
88
+ key = domain+spt+key;
89
+ }
90
+ return key;
91
+ }
92
+ <<default(true,true)||
93
+ public Conf update(Map<String, Object> conf, boolean flush, boolean replace) {
94
+ if (conf==null)return this;
95
+ if (domain!=null) {
96
+ String[] ks = Utils.keys(domain, spt);
97
+ Map tmp = new HashMap();
98
+ Utils.dset(tmp, ks, conf);
99
+ conf = tmp;
100
+ }
101
+ if (root!=null) {
102
+ root.update(conf, flush, replace);
103
+ return this;
104
+ }
105
+ if (flush) {
106
+ conf = Utils.flushMaps(conf, spt);
107
+ }
108
+ Utils.fill(conf, this.conf, replace);
109
+ return this;
110
+ }>>
111
+ <<methods(stackSets,true)||domain(stackSet)||
112
+ public void _stackSet(String key, Object value) {
113
+ List list = new ArrayList();
114
+ list.add(value);
115
+ stacks.put(key, list);
116
+ }>>
117
+ <<methods(stackUnsets,ret=0)||domain(stackUnset)||
118
+ public boolean _stackUnset(String key) {
119
+ if (!stacks.containsKey(key)) {
120
+ return false;
121
+ }
122
+ stacks.remove(key);
123
+ return true;
124
+ }>>
125
+ <<rename(tmpSet)||stackSet>>
126
+ <<rename(tmpUnset)||stackUnset>>
127
+ <<rename(tmpSets)||stackSets>>
128
+ <<rename(tmpUnsets)||stackUnsets>>
129
+ <<methods(pushs,val=true)||domain(push)||
130
+ public void _push(String key, Object value) {
131
+ if (!stacks.containsKey(key)) {
132
+ stacks.put(key, new ArrayList());
133
+ }
134
+ List list = (List)stacks.get(key);
135
+ list.add(value);
136
+ }>>
137
+ <<methods(pops,ret=1)||domain(pop)||
138
+ public boolean _pop(String key) {
139
+ if (!stacks.containsKey(key)) {
140
+ return false;
141
+ }
142
+ List list = stacks.get(key);
143
+ if (list.size()==0)return false;
144
+ list.remove(list.size()-1);
145
+ return true;
146
+ }>>
147
+ <<domain(link)||_link>>
148
+ <<methods(links,val=true,ret=false,align=true)||link>>
149
+ public void _link(String src, String target) {
150
+ String[] keys = Utils.keys(src, spt);
151
+ Link links = this._links;
152
+ for (String key:keys) {
153
+ if (!links.maps.containsKey(key)) {
154
+ links.maps.put(key, new Link());
155
+ }
156
+ links = links.maps.get(key);
157
+ }
158
+ links.val = target;
159
+ }
160
+ <<methods(unlinks)||domain(unlink)||_unlink>>
161
+ public boolean _unlink(String key) {
162
+ String[] keys = sptKeys(key);
163
+ Link links = this._links;
164
+ for (String _key:keys) {
165
+ if (!links.maps.containsKey(_key)) {
166
+ return false;
167
+ }
168
+ links = links.maps.get(_key);
169
+ }
170
+ links.val = null;
171
+ return true;
172
+ }
173
+ private LinkMatch linkMatch(String[] keys) {
174
+ Conf obj = top();
175
+ Link links = obj._links;
176
+ int deep=0;
177
+ for(String key:keys){
178
+ if (!links.maps.containsKey(key)){
179
+ break;
180
+ }
181
+ deep+=1;
182
+ links = links.maps.get(key);
183
+ }
184
+ return new LinkMatch(links.val,deep);
185
+ }
186
+ <<methods(sets,val=true,ret=false,align=true)||domain(set)||
187
+ public void _set(String key, Object value) {
188
+ String[] keys = sptKeys(key);
189
+ // System.out.println("[XXX] set.key:"+key);
190
+ // System.out.println("[XXX] set.keys:"+keys.length);
191
+ Utils.dset(this.conf, keys, value);
192
+ }>>
193
+ <<||->||domain(hget)->default(null,-1,-1)->
194
+ public Result _hget(String key, Object def, int loop, int stack){
195
+ Result rst = new Result();
196
+ if (stack!=0&&stacks.containsKey(key)){
197
+ List list = stacks.get(key);
198
+ if (list.size()>0){
199
+ rst.val = list.get(list.size()-1);
200
+ rst.find=true;
201
+ return rst;
202
+ }
203
+ }
204
+ String[] keys = sptKeys(key);
205
+ Utils.dget(conf, keys, def, rst);
206
+ if (rst.find || loop==0){
207
+ return rst;
208
+ }
209
+ LinkMatch match = linkMatch(keys);
210
+ if (match.val ==null) {
211
+ return rst;
212
+ }
213
+ keys = Arrays.copyOfRange(keys, match.deep, keys.length);
214
+ key = String.join(spt, keys);
215
+ if (loop>0)loop-=1;
216
+ if (stack>0)stack-=1;
217
+ return _hget(key, def, loop, stack);
218
+ }>>
219
+ <<methods(gets, Object, true, false,'null')||domain(get)||default(null,-1,-1)||
220
+ public Object _get(String key, Object def, int loop, int stack) {
221
+ return _hget(key, def, loop, stack).val;
222
+ }>>
223
+ <<default(-1,-1)||
224
+ public <T> T wget(String key, T def, int loop, int stack) {
225
+ Object val = get(key, def, loop, stack);
226
+ return (T) val;
227
+ }>>
228
+ <<default(null, -1,-1)||
229
+ public <T> T tget(String key, Class<T> type, T def, int loop, int stack) {
230
+ Object val = get(key, def, loop, stack);
231
+ return (T) val;
232
+ }>>
233
+ <<methods(removes)||domain(remove)||
234
+ public boolean _remove(String key) {
235
+ String[] keys = sptKeys(key);
236
+ return Utils.dremove(conf, keys);
237
+ }>>
238
+ <<domain(has)||default(0,0)||
239
+ public boolean _has(String key, int loop, int stack){
240
+ return _hget(key, null, loop, stack).find;
241
+ }>>
242
+ public String[] sptKeys(String key){
243
+ return Utils.keys(key, spt);
244
+ }
245
+ public String[] sptsKeys(String keys) {
246
+ String[] ks = Utils.keys(keys, spts);
247
+ for(int i=0;i<ks.length;i++){
248
+ ks[i] = ks[i].trim();
249
+ }
250
+ return ks;
251
+ }
252
+ public boolean hasAll(String keys, int loop, int stack) {
253
+ String[] ks = sptsKeys(keys);
254
+ for(String key:ks) {
255
+ if (!has(key,loop,stack))return false;
256
+ }
257
+ return true;
258
+ }
259
+ public boolean hasAny(String keys, int loop, int stack) {
260
+ String[] ks = sptsKeys(keys);
261
+ for(String key:ks) {
262
+ if (has(key,loop,stack))return true;
263
+ }
264
+ return false;
265
+ }
266
+ }