appwrite-cli 0.14.0

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 (413) hide show
  1. package/.github/workflows/npm-publish.yml +41 -0
  2. package/Formula/appwrite.rb +19 -0
  3. package/LICENSE.md +12 -0
  4. package/README.md +102 -0
  5. package/docs/examples/account/create-anonymous-session.md +1 -0
  6. package/docs/examples/account/create-j-w-t.md +1 -0
  7. package/docs/examples/account/create-magic-u-r-l-session.md +4 -0
  8. package/docs/examples/account/create-o-auth2session.md +5 -0
  9. package/docs/examples/account/create-recovery.md +3 -0
  10. package/docs/examples/account/create-session.md +3 -0
  11. package/docs/examples/account/create-verification.md +2 -0
  12. package/docs/examples/account/create.md +5 -0
  13. package/docs/examples/account/delete-session.md +2 -0
  14. package/docs/examples/account/delete-sessions.md +1 -0
  15. package/docs/examples/account/delete.md +1 -0
  16. package/docs/examples/account/get-logs.md +3 -0
  17. package/docs/examples/account/get-prefs.md +1 -0
  18. package/docs/examples/account/get-session.md +2 -0
  19. package/docs/examples/account/get-sessions.md +1 -0
  20. package/docs/examples/account/get.md +1 -0
  21. package/docs/examples/account/update-email.md +3 -0
  22. package/docs/examples/account/update-magic-u-r-l-session.md +3 -0
  23. package/docs/examples/account/update-name.md +2 -0
  24. package/docs/examples/account/update-password.md +3 -0
  25. package/docs/examples/account/update-prefs.md +2 -0
  26. package/docs/examples/account/update-recovery.md +5 -0
  27. package/docs/examples/account/update-session.md +2 -0
  28. package/docs/examples/account/update-verification.md +3 -0
  29. package/docs/examples/avatars/get-browser.md +5 -0
  30. package/docs/examples/avatars/get-credit-card.md +5 -0
  31. package/docs/examples/avatars/get-favicon.md +2 -0
  32. package/docs/examples/avatars/get-flag.md +5 -0
  33. package/docs/examples/avatars/get-image.md +4 -0
  34. package/docs/examples/avatars/get-initials.md +6 -0
  35. package/docs/examples/avatars/get-q-r.md +5 -0
  36. package/docs/examples/database/create-boolean-attribute.md +6 -0
  37. package/docs/examples/database/create-collection.md +6 -0
  38. package/docs/examples/database/create-document.md +6 -0
  39. package/docs/examples/database/create-email-attribute.md +6 -0
  40. package/docs/examples/database/create-enum-attribute.md +7 -0
  41. package/docs/examples/database/create-float-attribute.md +8 -0
  42. package/docs/examples/database/create-index.md +6 -0
  43. package/docs/examples/database/create-integer-attribute.md +8 -0
  44. package/docs/examples/database/create-ip-attribute.md +6 -0
  45. package/docs/examples/database/create-string-attribute.md +7 -0
  46. package/docs/examples/database/create-url-attribute.md +6 -0
  47. package/docs/examples/database/delete-attribute.md +3 -0
  48. package/docs/examples/database/delete-collection.md +2 -0
  49. package/docs/examples/database/delete-document.md +3 -0
  50. package/docs/examples/database/delete-index.md +3 -0
  51. package/docs/examples/database/get-attribute.md +3 -0
  52. package/docs/examples/database/get-collection-usage.md +3 -0
  53. package/docs/examples/database/get-collection.md +2 -0
  54. package/docs/examples/database/get-document.md +3 -0
  55. package/docs/examples/database/get-index.md +3 -0
  56. package/docs/examples/database/get-usage.md +2 -0
  57. package/docs/examples/database/list-attributes.md +2 -0
  58. package/docs/examples/database/list-collection-logs.md +4 -0
  59. package/docs/examples/database/list-collections.md +7 -0
  60. package/docs/examples/database/list-document-logs.md +5 -0
  61. package/docs/examples/database/list-documents.md +9 -0
  62. package/docs/examples/database/list-indexes.md +2 -0
  63. package/docs/examples/database/update-collection.md +7 -0
  64. package/docs/examples/database/update-document.md +6 -0
  65. package/docs/examples/functions/create-deployment.md +5 -0
  66. package/docs/examples/functions/create-execution.md +4 -0
  67. package/docs/examples/functions/create.md +9 -0
  68. package/docs/examples/functions/delete-deployment.md +3 -0
  69. package/docs/examples/functions/delete.md +2 -0
  70. package/docs/examples/functions/get-deployment.md +3 -0
  71. package/docs/examples/functions/get-execution.md +3 -0
  72. package/docs/examples/functions/get-usage.md +3 -0
  73. package/docs/examples/functions/get.md +2 -0
  74. package/docs/examples/functions/list-deployments.md +8 -0
  75. package/docs/examples/functions/list-executions.md +7 -0
  76. package/docs/examples/functions/list-runtimes.md +1 -0
  77. package/docs/examples/functions/list.md +7 -0
  78. package/docs/examples/functions/retry-build.md +4 -0
  79. package/docs/examples/functions/update-deployment.md +3 -0
  80. package/docs/examples/functions/update.md +8 -0
  81. package/docs/examples/health/get-antivirus.md +1 -0
  82. package/docs/examples/health/get-cache.md +1 -0
  83. package/docs/examples/health/get-d-b.md +1 -0
  84. package/docs/examples/health/get-queue-certificates.md +1 -0
  85. package/docs/examples/health/get-queue-functions.md +1 -0
  86. package/docs/examples/health/get-queue-logs.md +1 -0
  87. package/docs/examples/health/get-queue-usage.md +1 -0
  88. package/docs/examples/health/get-queue-webhooks.md +1 -0
  89. package/docs/examples/health/get-storage-local.md +1 -0
  90. package/docs/examples/health/get-time.md +1 -0
  91. package/docs/examples/health/get.md +1 -0
  92. package/docs/examples/locale/get-continents.md +1 -0
  93. package/docs/examples/locale/get-countries-e-u.md +1 -0
  94. package/docs/examples/locale/get-countries-phones.md +1 -0
  95. package/docs/examples/locale/get-countries.md +1 -0
  96. package/docs/examples/locale/get-currencies.md +1 -0
  97. package/docs/examples/locale/get-languages.md +1 -0
  98. package/docs/examples/locale/get.md +1 -0
  99. package/docs/examples/projects/create-domain.md +3 -0
  100. package/docs/examples/projects/create-key.md +4 -0
  101. package/docs/examples/projects/create-platform.md +7 -0
  102. package/docs/examples/projects/create-webhook.md +8 -0
  103. package/docs/examples/projects/create.md +13 -0
  104. package/docs/examples/projects/delete-domain.md +3 -0
  105. package/docs/examples/projects/delete-key.md +3 -0
  106. package/docs/examples/projects/delete-platform.md +3 -0
  107. package/docs/examples/projects/delete-webhook.md +3 -0
  108. package/docs/examples/projects/delete.md +3 -0
  109. package/docs/examples/projects/get-domain.md +3 -0
  110. package/docs/examples/projects/get-key.md +3 -0
  111. package/docs/examples/projects/get-platform.md +3 -0
  112. package/docs/examples/projects/get-usage.md +3 -0
  113. package/docs/examples/projects/get-webhook.md +3 -0
  114. package/docs/examples/projects/get.md +2 -0
  115. package/docs/examples/projects/list-domains.md +2 -0
  116. package/docs/examples/projects/list-keys.md +2 -0
  117. package/docs/examples/projects/list-platforms.md +2 -0
  118. package/docs/examples/projects/list-webhooks.md +2 -0
  119. package/docs/examples/projects/list.md +7 -0
  120. package/docs/examples/projects/update-auth-limit.md +3 -0
  121. package/docs/examples/projects/update-auth-status.md +4 -0
  122. package/docs/examples/projects/update-domain-verification.md +3 -0
  123. package/docs/examples/projects/update-key.md +5 -0
  124. package/docs/examples/projects/update-o-auth2.md +5 -0
  125. package/docs/examples/projects/update-platform.md +7 -0
  126. package/docs/examples/projects/update-service-status.md +4 -0
  127. package/docs/examples/projects/update-webhook.md +9 -0
  128. package/docs/examples/projects/update.md +12 -0
  129. package/docs/examples/storage/create-bucket.md +11 -0
  130. package/docs/examples/storage/create-file.md +6 -0
  131. package/docs/examples/storage/delete-bucket.md +2 -0
  132. package/docs/examples/storage/delete-file.md +3 -0
  133. package/docs/examples/storage/get-bucket-usage.md +3 -0
  134. package/docs/examples/storage/get-bucket.md +2 -0
  135. package/docs/examples/storage/get-file-download.md +3 -0
  136. package/docs/examples/storage/get-file-preview.md +14 -0
  137. package/docs/examples/storage/get-file-view.md +3 -0
  138. package/docs/examples/storage/get-file.md +3 -0
  139. package/docs/examples/storage/get-usage.md +2 -0
  140. package/docs/examples/storage/list-buckets.md +7 -0
  141. package/docs/examples/storage/list-files.md +8 -0
  142. package/docs/examples/storage/update-bucket.md +11 -0
  143. package/docs/examples/storage/update-file.md +5 -0
  144. package/docs/examples/teams/create-membership.md +6 -0
  145. package/docs/examples/teams/create.md +4 -0
  146. package/docs/examples/teams/delete-membership.md +3 -0
  147. package/docs/examples/teams/delete.md +2 -0
  148. package/docs/examples/teams/get-membership.md +3 -0
  149. package/docs/examples/teams/get-memberships.md +8 -0
  150. package/docs/examples/teams/get.md +2 -0
  151. package/docs/examples/teams/list.md +7 -0
  152. package/docs/examples/teams/update-membership-roles.md +4 -0
  153. package/docs/examples/teams/update-membership-status.md +5 -0
  154. package/docs/examples/teams/update.md +3 -0
  155. package/docs/examples/users/create.md +5 -0
  156. package/docs/examples/users/delete-session.md +3 -0
  157. package/docs/examples/users/delete-sessions.md +2 -0
  158. package/docs/examples/users/delete.md +2 -0
  159. package/docs/examples/users/get-logs.md +4 -0
  160. package/docs/examples/users/get-prefs.md +2 -0
  161. package/docs/examples/users/get-sessions.md +2 -0
  162. package/docs/examples/users/get-usage.md +3 -0
  163. package/docs/examples/users/get.md +2 -0
  164. package/docs/examples/users/list.md +7 -0
  165. package/docs/examples/users/update-email.md +3 -0
  166. package/docs/examples/users/update-name.md +3 -0
  167. package/docs/examples/users/update-password.md +3 -0
  168. package/docs/examples/users/update-prefs.md +3 -0
  169. package/docs/examples/users/update-status.md +3 -0
  170. package/docs/examples/users/update-verification.md +3 -0
  171. package/index.js +49 -0
  172. package/install.sh +165 -0
  173. package/ldid/COPYING +661 -0
  174. package/ldid/Makefile +51 -0
  175. package/ldid/control +12 -0
  176. package/ldid/control.sh +5 -0
  177. package/ldid/deb.sh +10 -0
  178. package/ldid/ios.sh +2 -0
  179. package/ldid/ldid.cpp +3253 -0
  180. package/ldid/ldid.hpp +164 -0
  181. package/ldid/libplist/.github/workflows/build.yml +62 -0
  182. package/ldid/libplist/.github/workflows/codeql-analysis.yml +71 -0
  183. package/ldid/libplist/AUTHORS +28 -0
  184. package/ldid/libplist/COPYING +340 -0
  185. package/ldid/libplist/COPYING.LESSER +502 -0
  186. package/ldid/libplist/Makefile.am +20 -0
  187. package/ldid/libplist/NEWS +252 -0
  188. package/ldid/libplist/README.md +114 -0
  189. package/ldid/libplist/aclocal.m4 +1729 -0
  190. package/ldid/libplist/autogen.sh +26 -0
  191. package/ldid/libplist/configure.ac +292 -0
  192. package/ldid/libplist/cython/Makefile.am +53 -0
  193. package/ldid/libplist/cython/plist.pxd +78 -0
  194. package/ldid/libplist/cython/plist.pyx +947 -0
  195. package/ldid/libplist/cython/plist_util.c +40 -0
  196. package/ldid/libplist/cython/plist_util.h +5 -0
  197. package/ldid/libplist/docs/Makefile.am +3 -0
  198. package/ldid/libplist/docs/plistutil.1 +62 -0
  199. package/ldid/libplist/fuzz/Makefile.am +43 -0
  200. package/ldid/libplist/fuzz/bplist-crashes/clusterfuzz-testcase-4766291097288704 +0 -0
  201. package/ldid/libplist/fuzz/bplist-crashes/clusterfuzz-testcase-4930725262393344 +0 -0
  202. package/ldid/libplist/fuzz/bplist-crashes/clusterfuzz-testcase-5421965105954816 +0 -0
  203. package/ldid/libplist/fuzz/bplist-crashes/clusterfuzz-testcase-5556177727389696 +0 -0
  204. package/ldid/libplist/fuzz/bplist-crashes/clusterfuzz-testcase-6557963011489792 +0 -0
  205. package/ldid/libplist/fuzz/bplist-crashes/clusterfuzz-testcase-6605859144597504 +0 -0
  206. package/ldid/libplist/fuzz/bplist-crashes/crash-0ce4dd483b645bc05ec45a97d285dcf1933ee840 +0 -0
  207. package/ldid/libplist/fuzz/bplist-crashes/crash-0d59cdcb5c3416c2790612b78a631ce9f5622800 +0 -0
  208. package/ldid/libplist/fuzz/bplist-crashes/crash-17d635ab460fef74df1ac7561f1253533a6359c5 +0 -0
  209. package/ldid/libplist/fuzz/bplist-crashes/crash-33a67313fa7864cd627ef92d12017a127d342f28 +0 -0
  210. package/ldid/libplist/fuzz/bplist-crashes/crash-39f1347115f8fe9ac25cdc9332e3fc5cd32c7f7b +0 -0
  211. package/ldid/libplist/fuzz/bplist-crashes/crash-4bd78175fe01d07c5ee90104fbc68d95dd092210 +0 -0
  212. package/ldid/libplist/fuzz/bplist-crashes/crash-4c5404453bb7425aef9b953a5f6f3f0afcc48392 +0 -0
  213. package/ldid/libplist/fuzz/bplist-crashes/crash-52775e25f6af20af351cd616834e602fc988a032 +0 -0
  214. package/ldid/libplist/fuzz/bplist-crashes/crash-6d1399685b745d3d49fadc91072fabcdde8d16fa +0 -0
  215. package/ldid/libplist/fuzz/bplist-crashes/crash-94b3725900d63c6258448fd757559c81002de9c9 +0 -0
  216. package/ldid/libplist/fuzz/bplist-crashes/crash-a47195acbabc3f5b2cda9c6ebda42f2afc1cc5af +0 -0
  217. package/ldid/libplist/fuzz/bplist-crashes/crash-ce852bae6aeeffc4698a93660236f1b995ce966e +0 -0
  218. package/ldid/libplist/fuzz/bplist-crashes/crash-daddb6e82e3d1ed76e20e4131462f5247a6fb131 +0 -0
  219. package/ldid/libplist/fuzz/bplist-crashes/crash-f21be4ebce7f9c337bf96b93cec7e252f5c75a21 +0 -0
  220. package/ldid/libplist/fuzz/bplist-crashes/crash-f779dafccc0164684d1a264976e56037188b40e2 +0 -0
  221. package/ldid/libplist/fuzz/bplist-leaks/leak-96fb453b3ba18d31e164831795a708183b5a0dac +0 -0
  222. package/ldid/libplist/fuzz/bplist-leaks/leak-acb3c00a83d7635638a476a4e70fc1f1caa1a5b1 +0 -0
  223. package/ldid/libplist/fuzz/bplist-leaks/leak-fe2cd4b1f67e0c9b21e6225a4fb4ca19eab80074 +0 -0
  224. package/ldid/libplist/fuzz/bplist.dict +1 -0
  225. package/ldid/libplist/fuzz/bplist_fuzzer.cc +32 -0
  226. package/ldid/libplist/fuzz/bplist_fuzzer.options +3 -0
  227. package/ldid/libplist/fuzz/fuzzers.test +8 -0
  228. package/ldid/libplist/fuzz/init-fuzzers.sh +23 -0
  229. package/ldid/libplist/fuzz/test-fuzzers.sh +33 -0
  230. package/ldid/libplist/fuzz/xplist-crashes/clusterfuzz-testcase-4516959125241856 +0 -0
  231. package/ldid/libplist/fuzz/xplist-crashes/clusterfuzz-testcase-4663876528373760 +5 -0
  232. package/ldid/libplist/fuzz/xplist-crashes/clusterfuzz-testcase-5799076113154048 +45 -0
  233. package/ldid/libplist/fuzz/xplist-crashes/clusterfuzz-testcase-5922404220010496 +0 -0
  234. package/ldid/libplist/fuzz/xplist-crashes/clusterfuzz-testcase-6015098361479168 +0 -0
  235. package/ldid/libplist/fuzz/xplist-crashes/clusterfuzz-testcase-6043836860071936 +0 -0
  236. package/ldid/libplist/fuzz/xplist-crashes/clusterfuzz-testcase-6047509906456576 +10050 -0
  237. package/ldid/libplist/fuzz/xplist-crashes/clusterfuzz-testcase-6482601374121984 +0 -0
  238. package/ldid/libplist/fuzz/xplist-crashes/crash-09788d7acb46b4b177422f9c4ee54556a3ad1f17 +53 -0
  239. package/ldid/libplist/fuzz/xplist-crashes/crash-155c60d5c4b2778110fb4a633caa7d64eb9b99c1 +9 -0
  240. package/ldid/libplist/fuzz/xplist-crashes/crash-348c909a0b3532977185f551eb5d2ed04e694883 +11 -0
  241. package/ldid/libplist/fuzz/xplist-crashes/crash-7bc172e27a2b1d4fcaf031f59d1f08fb83081e4a +8 -0
  242. package/ldid/libplist/fuzz/xplist-crashes/crash-80c28b0e2a446665e68927dd4441c10c9a68e64e +0 -0
  243. package/ldid/libplist/fuzz/xplist-crashes/crash-8acf177da60ecf13c36d0da1b8e25de891980ea6 +5 -0
  244. package/ldid/libplist/fuzz/xplist-crashes/crash-94276cf69a50e78dd6cdf079c208cb80f357cd33 +0 -0
  245. package/ldid/libplist/fuzz/xplist-crashes/crash-9ddb891a0ec42401eb4629e6b99e01aef7909eb9 +0 -0
  246. package/ldid/libplist/fuzz/xplist-crashes/crash-a8b44e1f5be4f75f00a937016ec5405bce77a0f9 +0 -0
  247. package/ldid/libplist/fuzz/xplist-crashes/crash-da39a3ee5e6b4b0d3255bfef95601890afd80709 +0 -0
  248. package/ldid/libplist/fuzz/xplist-crashes/crash-f03c680ee1c4d84c28e731752df77a61e213a24d +72 -0
  249. package/ldid/libplist/fuzz/xplist-leaks/clusterfuzz-testcase-4634751103139840 +187 -0
  250. package/ldid/libplist/fuzz/xplist-leaks/clusterfuzz-testcase-6056412121661440 +12 -0
  251. package/ldid/libplist/fuzz/xplist-leaks/leak-47b0a9f21d3affab6cfc898e5140bb53265ada07 +0 -0
  252. package/ldid/libplist/fuzz/xplist-leaks/leak-4c81aae70b20d9b9408b78d40999a54205bdcfb7 +0 -0
  253. package/ldid/libplist/fuzz/xplist-leaks/leak-53bc466851eda790bd891733da5db0a7482886bf +6 -0
  254. package/ldid/libplist/fuzz/xplist.dict +51 -0
  255. package/ldid/libplist/fuzz/xplist_fuzzer.cc +32 -0
  256. package/ldid/libplist/fuzz/xplist_fuzzer.options +3 -0
  257. package/ldid/libplist/include/Makefile.am +15 -0
  258. package/ldid/libplist/include/plist/Array.h +55 -0
  259. package/ldid/libplist/include/plist/Boolean.h +48 -0
  260. package/ldid/libplist/include/plist/Data.h +49 -0
  261. package/ldid/libplist/include/plist/Date.h +50 -0
  262. package/ldid/libplist/include/plist/Dictionary.h +68 -0
  263. package/ldid/libplist/include/plist/Integer.h +48 -0
  264. package/ldid/libplist/include/plist/Key.h +49 -0
  265. package/ldid/libplist/include/plist/Node.h +57 -0
  266. package/ldid/libplist/include/plist/Real.h +48 -0
  267. package/ldid/libplist/include/plist/String.h +49 -0
  268. package/ldid/libplist/include/plist/Structure.h +59 -0
  269. package/ldid/libplist/include/plist/Uid.h +48 -0
  270. package/ldid/libplist/include/plist/plist++.h +39 -0
  271. package/ldid/libplist/include/plist/plist.h +953 -0
  272. package/ldid/libplist/libcnary/COPYING +502 -0
  273. package/ldid/libplist/libcnary/Makefile.am +15 -0
  274. package/ldid/libplist/libcnary/README +5 -0
  275. package/ldid/libplist/libcnary/cnary.c +46 -0
  276. package/ldid/libplist/libcnary/include/node.h +65 -0
  277. package/ldid/libplist/libcnary/include/node_list.h +47 -0
  278. package/ldid/libplist/libcnary/include/object.h +41 -0
  279. package/ldid/libplist/libcnary/node.c +216 -0
  280. package/ldid/libplist/libcnary/node_list.c +157 -0
  281. package/ldid/libplist/m4/ac_pkg_cython.m4 +67 -0
  282. package/ldid/libplist/m4/as-compiler-flag.m4 +62 -0
  283. package/ldid/libplist/m4/ax_pthread.m4 +485 -0
  284. package/ldid/libplist/m4/ax_python_devel.m4 +327 -0
  285. package/ldid/libplist/m4/cython_python.m4 +7 -0
  286. package/ldid/libplist/src/Array.cpp +148 -0
  287. package/ldid/libplist/src/Boolean.cpp +73 -0
  288. package/ldid/libplist/src/Data.cpp +79 -0
  289. package/ldid/libplist/src/Date.cpp +76 -0
  290. package/ldid/libplist/src/Dictionary.cpp +182 -0
  291. package/ldid/libplist/src/Integer.cpp +73 -0
  292. package/ldid/libplist/src/Key.cpp +80 -0
  293. package/ldid/libplist/src/Makefile.am +63 -0
  294. package/ldid/libplist/src/Node.cpp +166 -0
  295. package/ldid/libplist/src/Real.cpp +73 -0
  296. package/ldid/libplist/src/String.cpp +80 -0
  297. package/ldid/libplist/src/Structure.cpp +123 -0
  298. package/ldid/libplist/src/Uid.cpp +73 -0
  299. package/ldid/libplist/src/base64.c +119 -0
  300. package/ldid/libplist/src/base64.h +28 -0
  301. package/ldid/libplist/src/bplist.c +1381 -0
  302. package/ldid/libplist/src/bytearray.c +61 -0
  303. package/ldid/libplist/src/bytearray.h +36 -0
  304. package/ldid/libplist/src/hashtable.c +140 -0
  305. package/ldid/libplist/src/hashtable.h +50 -0
  306. package/ldid/libplist/src/plist.c +1356 -0
  307. package/ldid/libplist/src/plist.h +74 -0
  308. package/ldid/libplist/src/ptrarray.c +96 -0
  309. package/ldid/libplist/src/ptrarray.h +40 -0
  310. package/ldid/libplist/src/strbuf.h +34 -0
  311. package/ldid/libplist/src/time64.c +814 -0
  312. package/ldid/libplist/src/time64.h +81 -0
  313. package/ldid/libplist/src/time64_limits.h +97 -0
  314. package/ldid/libplist/src/xplist.c +1435 -0
  315. package/ldid/libplist/test/Makefile.am +93 -0
  316. package/ldid/libplist/test/amp.test +14 -0
  317. package/ldid/libplist/test/bigarray.test +15 -0
  318. package/ldid/libplist/test/cdata.test +12 -0
  319. package/ldid/libplist/test/data/1.plist +35 -0
  320. package/ldid/libplist/test/data/2.plist +100 -0
  321. package/ldid/libplist/test/data/3.plist +420 -0
  322. package/ldid/libplist/test/data/4.plist +5037 -0
  323. package/ldid/libplist/test/data/5.plist +55053 -0
  324. package/ldid/libplist/test/data/6.plist +4006 -0
  325. package/ldid/libplist/test/data/7.plist +14 -0
  326. package/ldid/libplist/test/data/amp.plist +6 -0
  327. package/ldid/libplist/test/data/cdata.plist +6 -0
  328. package/ldid/libplist/test/data/dictref1byte.bplist +0 -0
  329. package/ldid/libplist/test/data/dictref2bytes.bplist +0 -0
  330. package/ldid/libplist/test/data/dictref3bytes.bplist +0 -0
  331. package/ldid/libplist/test/data/dictref4bytes.bplist +0 -0
  332. package/ldid/libplist/test/data/dictref5bytes.bplist +0 -0
  333. package/ldid/libplist/test/data/dictref6bytes.bplist +0 -0
  334. package/ldid/libplist/test/data/dictref7bytes.bplist +0 -0
  335. package/ldid/libplist/test/data/dictref8bytes.bplist +0 -0
  336. package/ldid/libplist/test/data/empty_keys.plist +8 -0
  337. package/ldid/libplist/test/data/entities.plist +57 -0
  338. package/ldid/libplist/test/data/hex.plist +5 -0
  339. package/ldid/libplist/test/data/invalid_tag.plist +6 -0
  340. package/ldid/libplist/test/data/malformed_dict.bplist +0 -0
  341. package/ldid/libplist/test/data/off1byte.bplist +0 -0
  342. package/ldid/libplist/test/data/off2bytes.bplist +0 -0
  343. package/ldid/libplist/test/data/off3bytes.bplist +0 -0
  344. package/ldid/libplist/test/data/off4bytes.bplist +0 -0
  345. package/ldid/libplist/test/data/off5bytes.bplist +0 -0
  346. package/ldid/libplist/test/data/off6bytes.bplist +0 -0
  347. package/ldid/libplist/test/data/off7bytes.bplist +0 -0
  348. package/ldid/libplist/test/data/off8bytes.bplist +0 -0
  349. package/ldid/libplist/test/data/offxml.plist +8 -0
  350. package/ldid/libplist/test/data/order.bplist +0 -0
  351. package/ldid/libplist/test/data/order.plist +27 -0
  352. package/ldid/libplist/test/data/recursion.bplist +0 -0
  353. package/ldid/libplist/test/data/signed.bplist +0 -0
  354. package/ldid/libplist/test/data/signed.plist +5 -0
  355. package/ldid/libplist/test/data/signedunsigned.bplist +0 -0
  356. package/ldid/libplist/test/data/signedunsigned.plist +11 -0
  357. package/ldid/libplist/test/data/unsigned.bplist +0 -0
  358. package/ldid/libplist/test/data/unsigned.plist +5 -0
  359. package/ldid/libplist/test/dates.test +15 -0
  360. package/ldid/libplist/test/empty.test +15 -0
  361. package/ldid/libplist/test/empty_keys.test +12 -0
  362. package/ldid/libplist/test/entities.test +12 -0
  363. package/ldid/libplist/test/hex.test +12 -0
  364. package/ldid/libplist/test/huge.test +15 -0
  365. package/ldid/libplist/test/invalid_tag.test +14 -0
  366. package/ldid/libplist/test/large.test +15 -0
  367. package/ldid/libplist/test/malformed_dict.test +11 -0
  368. package/ldid/libplist/test/medium.test +15 -0
  369. package/ldid/libplist/test/offsetsize.test +12 -0
  370. package/ldid/libplist/test/order.test +13 -0
  371. package/ldid/libplist/test/plist_cmp.c +158 -0
  372. package/ldid/libplist/test/plist_test.c +135 -0
  373. package/ldid/libplist/test/recursion.test +11 -0
  374. package/ldid/libplist/test/refsize.test +12 -0
  375. package/ldid/libplist/test/signedunsigned1.test +23 -0
  376. package/ldid/libplist/test/signedunsigned2.test +23 -0
  377. package/ldid/libplist/test/signedunsigned3.test +23 -0
  378. package/ldid/libplist/test/small.test +15 -0
  379. package/ldid/libplist/test/timezone1.test +17 -0
  380. package/ldid/libplist/test/timezone2.test +21 -0
  381. package/ldid/libplist/tools/Makefile.am +10 -0
  382. package/ldid/libplist/tools/plistutil.c +299 -0
  383. package/ldid/lookup2.c +416 -0
  384. package/ldid/make.sh +90 -0
  385. package/ldid/minimal/hexdump.h +76 -0
  386. package/ldid/minimal/mapping.h +72 -0
  387. package/ldid/minimal/sqlite3.h +71 -0
  388. package/ldid/minimal/stdlib.h +129 -0
  389. package/ldid/minimal/string.h +51 -0
  390. package/ldid/plist.sh +2 -0
  391. package/ldid/sha1.h +64 -0
  392. package/ldid/sysroot.sh +31 -0
  393. package/ldid/version.sh +2 -0
  394. package/lib/client.js +243 -0
  395. package/lib/commands/account.js +785 -0
  396. package/lib/commands/avatars.js +349 -0
  397. package/lib/commands/database.js +1238 -0
  398. package/lib/commands/deploy.js +477 -0
  399. package/lib/commands/functions.js +689 -0
  400. package/lib/commands/generic.js +106 -0
  401. package/lib/commands/health.js +269 -0
  402. package/lib/commands/init.js +148 -0
  403. package/lib/commands/locale.js +177 -0
  404. package/lib/commands/projects.js +1191 -0
  405. package/lib/commands/storage.js +743 -0
  406. package/lib/commands/teams.js +435 -0
  407. package/lib/commands/users.js +542 -0
  408. package/lib/config.js +264 -0
  409. package/lib/exception.js +9 -0
  410. package/lib/parser.js +179 -0
  411. package/lib/questions.js +223 -0
  412. package/lib/sdks.js +82 -0
  413. package/package.json +41 -0
@@ -0,0 +1,182 @@
1
+ /*
2
+ * Dictionary.cpp
3
+ *
4
+ * Copyright (c) 2009 Jonathan Beck All Rights Reserved.
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
+ */
20
+
21
+ #include <cstdlib>
22
+ #include <plist/Dictionary.h>
23
+
24
+ namespace PList
25
+ {
26
+
27
+ Dictionary::Dictionary(Node* parent) : Structure(PLIST_DICT, parent)
28
+ {
29
+ }
30
+
31
+ static void dictionary_fill(Dictionary *_this, std::map<std::string,Node*> &map, plist_t node)
32
+ {
33
+ plist_dict_iter it = NULL;
34
+ plist_dict_new_iter(node, &it);
35
+ plist_t subnode = NULL;
36
+ do {
37
+ char *key = NULL;
38
+ subnode = NULL;
39
+ plist_dict_next_item(node, it, &key, &subnode);
40
+ if (key && subnode)
41
+ map[std::string(key)] = Node::FromPlist(subnode, _this);
42
+ free(key);
43
+ } while (subnode);
44
+ free(it);
45
+ }
46
+
47
+ Dictionary::Dictionary(plist_t node, Node* parent) : Structure(parent)
48
+ {
49
+ _node = node;
50
+ dictionary_fill(this, _map, _node);
51
+ }
52
+
53
+ Dictionary::Dictionary(const PList::Dictionary& d)
54
+ {
55
+ for (Dictionary::iterator it = _map.begin(); it != _map.end(); it++)
56
+ {
57
+ plist_free(it->second->GetPlist());
58
+ delete it->second;
59
+ }
60
+ _map.clear();
61
+ _node = plist_copy(d.GetPlist());
62
+ dictionary_fill(this, _map, _node);
63
+ }
64
+
65
+ Dictionary& Dictionary::operator=(PList::Dictionary& d)
66
+ {
67
+ for (Dictionary::iterator it = _map.begin(); it != _map.end(); it++)
68
+ {
69
+ plist_free(it->second->GetPlist());
70
+ delete it->second;
71
+ }
72
+ _map.clear();
73
+ _node = plist_copy(d.GetPlist());
74
+ dictionary_fill(this, _map, _node);
75
+ return *this;
76
+ }
77
+
78
+ Dictionary::~Dictionary()
79
+ {
80
+ for (Dictionary::iterator it = _map.begin(); it != _map.end(); it++)
81
+ {
82
+ delete it->second;
83
+ }
84
+ _map.clear();
85
+ }
86
+
87
+ Node* Dictionary::Clone() const
88
+ {
89
+ return new Dictionary(*this);
90
+ }
91
+
92
+ Node* Dictionary::operator[](const std::string& key)
93
+ {
94
+ return _map[key];
95
+ }
96
+
97
+ Dictionary::iterator Dictionary::Begin()
98
+ {
99
+ return _map.begin();
100
+ }
101
+
102
+ Dictionary::iterator Dictionary::End()
103
+ {
104
+ return _map.end();
105
+ }
106
+
107
+ Dictionary::const_iterator Dictionary::Begin() const
108
+ {
109
+ return _map.begin();
110
+ }
111
+
112
+ Dictionary::const_iterator Dictionary::End() const
113
+ {
114
+ return _map.end();
115
+ }
116
+
117
+ Dictionary::iterator Dictionary::Find(const std::string& key)
118
+ {
119
+ return _map.find(key);
120
+ }
121
+
122
+ Dictionary::const_iterator Dictionary::Find(const std::string& key) const
123
+ {
124
+ return _map.find(key);
125
+ }
126
+
127
+ Dictionary::iterator Dictionary::Set(const std::string& key, const Node* node)
128
+ {
129
+ if (node)
130
+ {
131
+ Node* clone = node->Clone();
132
+ UpdateNodeParent(clone);
133
+ plist_dict_set_item(_node, key.c_str(), clone->GetPlist());
134
+ delete _map[key];
135
+ _map[key] = clone;
136
+ return _map.find(key);
137
+ }
138
+ return iterator(this->_map.end());
139
+ }
140
+
141
+ Dictionary::iterator Dictionary::Set(const std::string& key, const Node& node)
142
+ {
143
+ return Set(key, &node);
144
+ }
145
+
146
+ Dictionary::iterator Dictionary::Insert(const std::string& key, Node* node)
147
+ {
148
+ return this->Set(key, node);
149
+ }
150
+
151
+ void Dictionary::Remove(Node* node)
152
+ {
153
+ if (node)
154
+ {
155
+ char* key = NULL;
156
+ plist_dict_get_item_key(node->GetPlist(), &key);
157
+ plist_dict_remove_item(_node, key);
158
+ std::string skey = key;
159
+ free(key);
160
+ _map.erase(skey);
161
+ delete node;
162
+ }
163
+ }
164
+
165
+ void Dictionary::Remove(const std::string& key)
166
+ {
167
+ plist_dict_remove_item(_node, key.c_str());
168
+ delete _map[key];
169
+ _map.erase(key);
170
+ }
171
+
172
+ std::string Dictionary::GetNodeKey(Node* node)
173
+ {
174
+ for (iterator it = _map.begin(); it != _map.end(); ++it)
175
+ {
176
+ if (it->second == node)
177
+ return it->first;
178
+ }
179
+ return "";
180
+ }
181
+
182
+ } // namespace PList
@@ -0,0 +1,73 @@
1
+ /*
2
+ * Integer.cpp
3
+ *
4
+ * Copyright (c) 2009 Jonathan Beck All Rights Reserved.
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
+ */
20
+
21
+ #include <cstdlib>
22
+ #include <plist/Integer.h>
23
+
24
+ namespace PList
25
+ {
26
+
27
+ Integer::Integer(Node* parent) : Node(PLIST_UINT, parent)
28
+ {
29
+ }
30
+
31
+ Integer::Integer(plist_t node, Node* parent) : Node(node, parent)
32
+ {
33
+ }
34
+
35
+ Integer::Integer(const PList::Integer& i) : Node(PLIST_UINT)
36
+ {
37
+ plist_set_uint_val(_node, i.GetValue());
38
+ }
39
+
40
+ Integer& Integer::operator=(PList::Integer& i)
41
+ {
42
+ plist_free(_node);
43
+ _node = plist_copy(i.GetPlist());
44
+ return *this;
45
+ }
46
+
47
+ Integer::Integer(uint64_t i) : Node(PLIST_UINT)
48
+ {
49
+ plist_set_uint_val(_node, i);
50
+ }
51
+
52
+ Integer::~Integer()
53
+ {
54
+ }
55
+
56
+ Node* Integer::Clone() const
57
+ {
58
+ return new Integer(*this);
59
+ }
60
+
61
+ void Integer::SetValue(uint64_t i)
62
+ {
63
+ plist_set_uint_val(_node, i);
64
+ }
65
+
66
+ uint64_t Integer::GetValue() const
67
+ {
68
+ uint64_t i = 0;
69
+ plist_get_uint_val(_node, &i);
70
+ return i;
71
+ }
72
+
73
+ } // namespace PList
@@ -0,0 +1,80 @@
1
+ /*
2
+ * Key.cpp
3
+ *
4
+ * Copyright (c) 2012 Nikias Bassen, All Rights Reserved.
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
+ */
20
+
21
+ #include <cstdlib>
22
+ #include <plist/Key.h>
23
+
24
+ namespace PList
25
+ {
26
+
27
+ Key::Key(Node* parent) : Node(PLIST_KEY, parent)
28
+ {
29
+ }
30
+
31
+ Key::Key(plist_t node, Node* parent) : Node(node, parent)
32
+ {
33
+ }
34
+
35
+ Key::Key(const PList::Key& k) : Node(PLIST_UINT)
36
+ {
37
+ plist_set_key_val(_node, k.GetValue().c_str());
38
+ }
39
+
40
+ Key& Key::operator=(PList::Key& k)
41
+ {
42
+ plist_free(_node);
43
+ _node = plist_copy(k.GetPlist());
44
+ return *this;
45
+ }
46
+
47
+ Key::Key(const std::string& s) : Node(PLIST_STRING)
48
+ {
49
+ plist_set_key_val(_node, s.c_str());
50
+ }
51
+
52
+ Key::~Key()
53
+ {
54
+ }
55
+
56
+ Node* Key::Clone() const
57
+ {
58
+ return new Key(*this);
59
+ }
60
+
61
+ void Key::SetValue(const std::string& s)
62
+ {
63
+ plist_set_key_val(_node, s.c_str());
64
+ }
65
+
66
+ std::string Key::GetValue() const
67
+ {
68
+ char* s = NULL;
69
+ plist_get_key_val(_node, &s);
70
+ std::string ret;
71
+ if (s) {
72
+ ret = s;
73
+ free(s);
74
+ } else {
75
+ ret = "";
76
+ }
77
+ return ret;
78
+ }
79
+
80
+ } // namespace PList
@@ -0,0 +1,63 @@
1
+ AM_CPPFLAGS = \
2
+ -I$(top_srcdir)/include \
3
+ -I$(top_srcdir) \
4
+ -I$(top_srcdir)/libcnary/include
5
+
6
+ AM_CFLAGS = $(GLOBAL_CFLAGS)
7
+ AM_LDFLAGS = $(GLOBAL_LDFLAGS)
8
+
9
+ lib_LTLIBRARIES = \
10
+ libplist-2.0.la \
11
+ libplist++-2.0.la
12
+
13
+ libplist_2_0_la_LIBADD = $(top_builddir)/libcnary/libcnary.la
14
+ libplist_2_0_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBPLIST_SO_VERSION) -no-undefined
15
+ libplist_2_0_la_SOURCES = \
16
+ base64.c base64.h \
17
+ bytearray.c bytearray.h \
18
+ strbuf.h \
19
+ hashtable.c hashtable.h \
20
+ ptrarray.c ptrarray.h \
21
+ time64.c time64.h \
22
+ time64_limits.h \
23
+ xplist.c \
24
+ bplist.c \
25
+ plist.c plist.h
26
+
27
+ libplist___2_0_la_LIBADD = libplist-2.0.la
28
+ libplist___2_0_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBPLIST_SO_VERSION) -no-undefined
29
+ libplist___2_0_la_SOURCES = \
30
+ Node.cpp \
31
+ Structure.cpp \
32
+ Array.cpp \
33
+ Boolean.cpp \
34
+ Data.cpp \
35
+ Date.cpp \
36
+ Dictionary.cpp \
37
+ Integer.cpp \
38
+ Key.cpp \
39
+ Real.cpp \
40
+ String.cpp \
41
+ Uid.cpp \
42
+ $(top_srcdir)/include/plist/Node.h \
43
+ $(top_srcdir)/include/plist/Structure.h \
44
+ $(top_srcdir)/include/plist/Array.h \
45
+ $(top_srcdir)/include/plist/Boolean.h \
46
+ $(top_srcdir)/include/plist/Data.h \
47
+ $(top_srcdir)/include/plist/Date.h \
48
+ $(top_srcdir)/include/plist/Dictionary.h \
49
+ $(top_srcdir)/include/plist/Integer.h \
50
+ $(top_srcdir)/include/plist/Key.h \
51
+ $(top_srcdir)/include/plist/Real.h \
52
+ $(top_srcdir)/include/plist/String.h \
53
+ $(top_srcdir)/include/plist/Uid.h
54
+
55
+ if WIN32
56
+ libplist_2_0_la_LDFLAGS += -avoid-version -static-libgcc
57
+ libplist___2_0_la_LDFLAGS += -avoid-version -static-libgcc
58
+ endif
59
+
60
+ pkgconfigdir = $(libdir)/pkgconfig
61
+ pkgconfig_DATA = \
62
+ libplist-2.0.pc \
63
+ libplist++-2.0.pc
@@ -0,0 +1,166 @@
1
+ /*
2
+ * Node.cpp
3
+ *
4
+ * Copyright (c) 2009 Jonathan Beck All Rights Reserved.
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
+ */
20
+
21
+ #include <cstdlib>
22
+ #include <plist/Node.h>
23
+ #include <plist/Structure.h>
24
+ #include <plist/Dictionary.h>
25
+ #include <plist/Array.h>
26
+ #include <plist/Boolean.h>
27
+ #include <plist/Integer.h>
28
+ #include <plist/Real.h>
29
+ #include <plist/String.h>
30
+ #include <plist/Key.h>
31
+ #include <plist/Uid.h>
32
+ #include <plist/Data.h>
33
+ #include <plist/Date.h>
34
+
35
+ namespace PList
36
+ {
37
+
38
+ Node::Node(Node* parent) : _parent(parent)
39
+ {
40
+ }
41
+
42
+ Node::Node(plist_t node, Node* parent) : _node(node), _parent(parent)
43
+ {
44
+ }
45
+
46
+ Node::Node(plist_type type, Node* parent) : _parent(parent)
47
+ {
48
+ _node = NULL;
49
+
50
+ switch (type)
51
+ {
52
+ case PLIST_BOOLEAN:
53
+ _node = plist_new_bool(0);
54
+ break;
55
+ case PLIST_UINT:
56
+ _node = plist_new_uint(0);
57
+ break;
58
+ case PLIST_REAL:
59
+ _node = plist_new_real(0.);
60
+ break;
61
+ case PLIST_STRING:
62
+ _node = plist_new_string("");
63
+ break;
64
+ case PLIST_KEY:
65
+ _node = plist_new_string("");
66
+ plist_set_key_val(_node, "");
67
+ break;
68
+ case PLIST_UID:
69
+ _node = plist_new_uid(0);
70
+ break;
71
+ case PLIST_DATA:
72
+ _node = plist_new_data(NULL,0);
73
+ break;
74
+ case PLIST_DATE:
75
+ _node = plist_new_date(0,0);
76
+ break;
77
+ case PLIST_ARRAY:
78
+ _node = plist_new_array();
79
+ break;
80
+ case PLIST_DICT:
81
+ _node = plist_new_dict();
82
+ break;
83
+ case PLIST_NONE:
84
+ default:
85
+ break;
86
+ }
87
+ }
88
+
89
+ Node::~Node()
90
+ {
91
+ /* If the Node is in a container, let _node be cleaned up by
92
+ * operations on the parent plist_t. Otherwise, duplicate frees
93
+ * occur when a Node is removed from or replaced in a Dictionary.
94
+ */
95
+ if (_parent == NULL)
96
+ plist_free(_node);
97
+ _node = NULL;
98
+ _parent = NULL;
99
+ }
100
+
101
+ plist_type Node::GetType() const
102
+ {
103
+ if (_node)
104
+ {
105
+ return plist_get_node_type(_node);
106
+ }
107
+ return PLIST_NONE;
108
+ }
109
+
110
+ plist_t Node::GetPlist() const
111
+ {
112
+ return _node;
113
+ }
114
+
115
+ Node* Node::GetParent() const
116
+ {
117
+ return _parent;
118
+ }
119
+
120
+ Node* Node::FromPlist(plist_t node, Node* parent)
121
+ {
122
+ Node* ret = NULL;
123
+ if (node)
124
+ {
125
+ plist_type type = plist_get_node_type(node);
126
+ switch (type)
127
+ {
128
+ case PLIST_DICT:
129
+ ret = new Dictionary(node, parent);
130
+ break;
131
+ case PLIST_ARRAY:
132
+ ret = new Array(node, parent);
133
+ break;
134
+ case PLIST_BOOLEAN:
135
+ ret = new Boolean(node, parent);
136
+ break;
137
+ case PLIST_UINT:
138
+ ret = new Integer(node, parent);
139
+ break;
140
+ case PLIST_REAL:
141
+ ret = new Real(node, parent);
142
+ break;
143
+ case PLIST_STRING:
144
+ ret = new String(node, parent);
145
+ break;
146
+ case PLIST_KEY:
147
+ ret = new Key(node, parent);
148
+ break;
149
+ case PLIST_UID:
150
+ ret = new Uid(node, parent);
151
+ break;
152
+ case PLIST_DATE:
153
+ ret = new Date(node, parent);
154
+ break;
155
+ case PLIST_DATA:
156
+ ret = new Data(node, parent);
157
+ break;
158
+ default:
159
+ plist_free(node);
160
+ break;
161
+ }
162
+ }
163
+ return ret;
164
+ }
165
+
166
+ } // namespace PList
@@ -0,0 +1,73 @@
1
+ /*
2
+ * Real.cpp
3
+ *
4
+ * Copyright (c) 2009 Jonathan Beck All Rights Reserved.
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
+ */
20
+
21
+ #include <cstdlib>
22
+ #include <plist/Real.h>
23
+
24
+ namespace PList
25
+ {
26
+
27
+ Real::Real(Node* parent) : Node(PLIST_REAL, parent)
28
+ {
29
+ }
30
+
31
+ Real::Real(plist_t node, Node* parent) : Node(node, parent)
32
+ {
33
+ }
34
+
35
+ Real::Real(const PList::Real& d) : Node(PLIST_UINT)
36
+ {
37
+ plist_set_real_val(_node, d.GetValue());
38
+ }
39
+
40
+ Real& Real::operator=(PList::Real& d)
41
+ {
42
+ plist_free(_node);
43
+ _node = plist_copy(d.GetPlist());
44
+ return *this;
45
+ }
46
+
47
+ Real::Real(double d) : Node(PLIST_REAL)
48
+ {
49
+ plist_set_real_val(_node, d);
50
+ }
51
+
52
+ Real::~Real()
53
+ {
54
+ }
55
+
56
+ Node* Real::Clone() const
57
+ {
58
+ return new Real(*this);
59
+ }
60
+
61
+ void Real::SetValue(double d)
62
+ {
63
+ plist_set_real_val(_node, d);
64
+ }
65
+
66
+ double Real::GetValue() const
67
+ {
68
+ double d = 0.;
69
+ plist_get_real_val(_node, &d);
70
+ return d;
71
+ }
72
+
73
+ } // namespace PList
@@ -0,0 +1,80 @@
1
+ /*
2
+ * String.cpp
3
+ *
4
+ * Copyright (c) 2009 Jonathan Beck All Rights Reserved.
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
+ */
20
+
21
+ #include <cstdlib>
22
+ #include <plist/String.h>
23
+
24
+ namespace PList
25
+ {
26
+
27
+ String::String(Node* parent) : Node(PLIST_STRING, parent)
28
+ {
29
+ }
30
+
31
+ String::String(plist_t node, Node* parent) : Node(node, parent)
32
+ {
33
+ }
34
+
35
+ String::String(const PList::String& s) : Node(PLIST_UINT)
36
+ {
37
+ plist_set_string_val(_node, s.GetValue().c_str());
38
+ }
39
+
40
+ String& String::operator=(PList::String& s)
41
+ {
42
+ plist_free(_node);
43
+ _node = plist_copy(s.GetPlist());
44
+ return *this;
45
+ }
46
+
47
+ String::String(const std::string& s) : Node(PLIST_STRING)
48
+ {
49
+ plist_set_string_val(_node, s.c_str());
50
+ }
51
+
52
+ String::~String()
53
+ {
54
+ }
55
+
56
+ Node* String::Clone() const
57
+ {
58
+ return new String(*this);
59
+ }
60
+
61
+ void String::SetValue(const std::string& s)
62
+ {
63
+ plist_set_string_val(_node, s.c_str());
64
+ }
65
+
66
+ std::string String::GetValue() const
67
+ {
68
+ char* s = NULL;
69
+ plist_get_string_val(_node, &s);
70
+ std::string ret;
71
+ if (s) {
72
+ ret = s;
73
+ free(s);
74
+ } else {
75
+ ret = "";
76
+ }
77
+ return ret;
78
+ }
79
+
80
+ } // namespace PList