{"_id":"@dessert-wasm/dessert-yaml-core","_rev":"1-81bdebbc7377d0a129422718cc07df94","name":"@dessert-wasm/dessert-yaml-core","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@dessert-wasm/dessert-yaml-core","collaborators":["Adrien <adrien.rouhete@epitech.eu>"],"description":"Backend for yaml libraries implemented in Rust for WASM","version":"0.1.0","repository":{"type":"git","url":"git+https://github.com/dessert-wasm/dessert-yaml-core.git"},"module":"dessert_yaml_core.js","types":"dessert_yaml_core.d.ts","sideEffects":"false","bugs":{"url":"https://github.com/dessert-wasm/dessert-yaml-core/issues"},"homepage":"https://github.com/dessert-wasm/dessert-yaml-core#readme","_id":"@dessert-wasm/dessert-yaml-core@0.1.0","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-+/6qNCy4K+I5N8nb8uVukLgRhxUS6VsiAz4BHJKfIxA2NqTRcEU0nME6U7XejOBc4H2gU8BXJ0qoyYk6nDBwOg==","shasum":"002117db06e72ff23d63aa1fd80954bf43c0780d","tarball":"https://registry.npmjs.org/@dessert-wasm/dessert-yaml-core/-/dessert-yaml-core-0.1.0.tgz","fileCount":5,"unpackedSize":412808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc9vA4CRA9TVsSAnZWagAAL0sP/0hsfcg++gR3VkQk6yZV\n23qzJJ5X/TsS7glmzCVhWcRyOe8jG8HIFr7fkXMgxRRywLtWtEDYiJ3Ki19g\nhTmVB1Rto30sB+WH+fiKP84pom3eugICD7/tOarce+AUygMbmzE8SKmlYDZJ\n54tDebTbmhuqekv2CgolB3vUe1rnqCculrumLjdKZqoT1qAHvXm9+5rG4xU9\nSfMJmPJG/oWI00AHbawGU2JesrA9J1N7oF4BD2puD0JLXH2DrEY8ZD8ftr83\nsa0j45iNyF0pYR8q+Sy/9+2GWwLVcxEcEYqBv+uhdca7SwN3cYs6zEpojmDB\ntplHArRCO4l4ueVMsRO9ZHjFa+nFjb8wPfbps7XwFLbpKNk8wxY6aTMyTa90\nnf4LFRvEIfxACOEbimgtGEsXueZgxFMrPpa+Wjds9WYZDT9yKveGLGCOQ8S+\nWJec1f0eC8dOpw9+epMXgTBzdYoSq7yzqJ8qDgru2kOVxp+1umgFRL6LAanc\nPmIHP4uWqMbXrj6Y3IjC//7r+TZQ4pTZAtJhcvnaz80xtHfVbKm4Hr5DdYhL\nGUiHWLvXaxTAYmkM+hxNt09mynBuISgxRxZshYecjzpP5rQ0zCPtjz3uPHil\nMb9zCpL4GwnHRSmPn4csXw+onQrzpLhKYzB/SHwGyYF1Qlp8o4VLfogpVa+t\nvalq\r\n=e6z4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4pLdTrrBj7D4seJ1bHqgVsBBZllvnJBnEeuJXk0nyRAIhAOpVq3K7jnaLHVbJe5PtjXa57k+FKScMMqQq6ybuhsAn"}]},"maintainers":[{"name":"nyquase","email":"adrien.rouhete@epitech.eu"}],"_npmUser":{"name":"nyquase","email":"adrien.rouhete@epitech.eu"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dessert-yaml-core_0.1.0_1559687223810_0.7547380655175859"},"_hasShrinkwrap":false}},"time":{"created":"2019-06-04T22:27:03.604Z","0.1.0":"2019-06-04T22:27:03.955Z","modified":"2022-04-05T04:00:49.056Z"},"maintainers":[{"name":"nyquase","email":"adrien.rouhete@epitech.eu"}],"description":"Backend for yaml libraries implemented in Rust for WASM","homepage":"https://github.com/dessert-wasm/dessert-yaml-core#readme","repository":{"type":"git","url":"git+https://github.com/dessert-wasm/dessert-yaml-core.git"},"bugs":{"url":"https://github.com/dessert-wasm/dessert-yaml-core/issues"},"readme":"Dessert YAML\n============\n\nThis library is the base API for YAML modules, written in Rust for WebAssembly.\n\nFor simplicity's sake, this module has been written using [serde yaml], but at the cost of flexibility. Some feature might be missing for now, like passing parsing options when loading/dumping.\n\n[serde yaml]: https://github.com/dtolnay/serde-yaml\n\n## Summary\n* [Installation](#installation)\n* [Performance](#performance)\n* [API](#api)\n* [Building](#building)\n\n\n## Installation\n```sh\nnpm install dessert-yaml-core\n```\n\n## Performance\n\nBig file (6.85MB)\n\n|           | dessert-yaml | js-yaml |  yaml-js |\n|:---------:|:------------:|:-------:|:--------:|\n|    load   |    1904ms    |  836ms  |  55461ms |\n|    dump   |     528ms    |  1193ms | 124931ms |\n\nSmall file (360 B)\n\n|           | dessert-yaml | js-yaml | yaml-js |\n|:---------:|:------------:|:-------:|:-------:|\n|    load   |      1ms     |   11ms  |   33ms  |\n|    dump   |      1ms     |   8ms   |   37ms  | \n\n\n## API\nThis section lists methods exported from Wasm to Javascript.\n\n> Note:  \nAlthought this library is usable as-is, it should be used as a dependency for a connector, such as [dessert-js-yaml].\n\n[dessert-js-yaml]: https://github.com/dessert-wasm/dessert-js-yaml\n\n``` javascript\nyaml = require('dessert-yaml-core');\nfs   = require('fs');\n\n// Get document, or throw exception on error\ntry {\n  let doc = yaml.load(fs.readFileSync('/home/ixti/example.yml', 'utf8'));\n  console.log(doc);\n\n  // Print the parsed object as a YAML stream\n  let yaml_stream = yaml.dump(doc);\n  console.log(yaml_stream);\n} catch (e) {\n  console.log(e);\n}\n```\n\n### load(string, [, options])\nMost simple way of parsing a document. Parses string as single YAML document. Returns a JavaScript object or throws YAMLException on error. options aren't used as for now.\n\n\n### loadSafe(string, [, options])\nSame as load()\n\n\n### loadAll(string, [, options])\nSame as safeLoad(), but understands multi-document sources. Applies iterator to each document if specified, or returns array of documents.\nCurrently same as load() because serde_yaml doesn't support multi document yet, and data structure from yaml-rust aren't serializable.\n\n\n### dump(object, [, options])\nSerializes object as a YAML document\n\n\n### safeDump(objects, [, options])\nSame as dump()\n\n\n## Building\nThe package can be built using [wasm-pack]\n\n[wasm-pack]: https://rustwasm.github.io/wasm-pack/installer/\n\n```sh\nwasm-pack build --target browser\n```\n\nTesting:\n```sh\nwasm-pack test --headless --[firefox|chrome|safari]\n```\n","readmeFilename":"README.md"}