aboutsummaryrefslogtreecommitdiff
path: root/node_modules/yaml/dist/nodes/YAMLSeq.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/yaml/dist/nodes/YAMLSeq.js')
-rw-r--r--node_modules/yaml/dist/nodes/YAMLSeq.js107
1 files changed, 0 insertions, 107 deletions
diff --git a/node_modules/yaml/dist/nodes/YAMLSeq.js b/node_modules/yaml/dist/nodes/YAMLSeq.js
deleted file mode 100644
index fe5451a..0000000
--- a/node_modules/yaml/dist/nodes/YAMLSeq.js
+++ /dev/null
@@ -1,107 +0,0 @@
-'use strict';
-
-var stringifyCollection = require('../stringify/stringifyCollection.js');
-var Collection = require('./Collection.js');
-var Node = require('./Node.js');
-var Scalar = require('./Scalar.js');
-var toJS = require('./toJS.js');
-
-class YAMLSeq extends Collection.Collection {
- constructor(schema) {
- super(Node.SEQ, schema);
- this.items = [];
- }
- static get tagName() {
- return 'tag:yaml.org,2002:seq';
- }
- add(value) {
- this.items.push(value);
- }
- /**
- * Removes a value from the collection.
- *
- * `key` must contain a representation of an integer for this to succeed.
- * It may be wrapped in a `Scalar`.
- *
- * @returns `true` if the item was found and removed.
- */
- delete(key) {
- const idx = asItemIndex(key);
- if (typeof idx !== 'number')
- return false;
- const del = this.items.splice(idx, 1);
- return del.length > 0;
- }
- /**
- * Returns item at `key`, or `undefined` if not found. By default unwraps
- * scalar values from their surrounding node; to disable set `keepScalar` to
- * `true` (collections are always returned intact).
- *
- * `key` must contain a representation of an integer for this to succeed.
- * It may be wrapped in a `Scalar`.
- */
- get(key, keepScalar) {
- const idx = asItemIndex(key);
- if (typeof idx !== 'number')
- return undefined;
- const it = this.items[idx];
- return !keepScalar && Node.isScalar(it) ? it.value : it;
- }
- /**
- * Checks if the collection includes a value with the key `key`.
- *
- * `key` must contain a representation of an integer for this to succeed.
- * It may be wrapped in a `Scalar`.
- */
- has(key) {
- const idx = asItemIndex(key);
- return typeof idx === 'number' && idx < this.items.length;
- }
- /**
- * Sets a value in this collection. For `!!set`, `value` needs to be a
- * boolean to add/remove the item from the set.
- *
- * If `key` does not contain a representation of an integer, this will throw.
- * It may be wrapped in a `Scalar`.
- */
- set(key, value) {
- const idx = asItemIndex(key);
- if (typeof idx !== 'number')
- throw new Error(`Expected a valid index, not ${key}.`);
- const prev = this.items[idx];
- if (Node.isScalar(prev) && Scalar.isScalarValue(value))
- prev.value = value;
- else
- this.items[idx] = value;
- }
- toJSON(_, ctx) {
- const seq = [];
- if (ctx === null || ctx === void 0 ? void 0 : ctx.onCreate)
- ctx.onCreate(seq);
- let i = 0;
- for (const item of this.items)
- seq.push(toJS.toJS(item, String(i++), ctx));
- return seq;
- }
- toString(ctx, onComment, onChompKeep) {
- if (!ctx)
- return JSON.stringify(this);
- return stringifyCollection.stringifyCollection(this, ctx, {
- blockItemPrefix: '- ',
- flowChars: { start: '[', end: ']' },
- itemIndent: (ctx.indent || '') + ' ',
- onChompKeep,
- onComment
- });
- }
-}
-function asItemIndex(key) {
- let idx = Node.isScalar(key) ? key.value : key;
- if (idx && typeof idx === 'string')
- idx = Number(idx);
- return typeof idx === 'number' && Number.isInteger(idx) && idx >= 0
- ? idx
- : null;
-}
-
-exports.YAMLSeq = YAMLSeq;