@tsdotnet/linked-node-list
Advanced tools
Comparing version 1.2.10 to 1.3.0
@@ -153,3 +153,3 @@ /* | ||
getNodeAt(index) { | ||
if (index < 0) | ||
if (index < 0 || !isFinite(index)) | ||
return undefined; | ||
@@ -345,2 +345,21 @@ let next = this._first; | ||
/** | ||
* Adds a node with the given value to the start of the list. | ||
* Becomes the first node. | ||
* @param value | ||
* @return {this} | ||
*/ | ||
prependValue(value) { | ||
this.addNodeBefore({ value: value }); | ||
return this; | ||
} | ||
/** | ||
* Adds a node with the given value to the end of the list. | ||
* Becomes the last node. | ||
* @param value | ||
* @return {this} | ||
*/ | ||
appendValue(value) { | ||
return this.addNode({ value: value }); | ||
} | ||
/** | ||
* Returns an iterable that selects the value of each node. | ||
@@ -347,0 +366,0 @@ * @returns {Iterable} |
@@ -151,2 +151,16 @@ import { ArrayLikeWritable, PredicateWithIndex } from '@tsdotnet/common-interfaces'; | ||
/** | ||
* Adds a node with the given value to the start of the list. | ||
* Becomes the first node. | ||
* @param value | ||
* @return {this} | ||
*/ | ||
prependValue(value: T): this; | ||
/** | ||
* Adds a node with the given value to the end of the list. | ||
* Becomes the last node. | ||
* @param value | ||
* @return {this} | ||
*/ | ||
appendValue(value: T): this; | ||
/** | ||
* Returns an iterable that selects the value of each node. | ||
@@ -153,0 +167,0 @@ * @returns {Iterable} |
@@ -157,3 +157,3 @@ "use strict"; | ||
getNodeAt(index) { | ||
if (index < 0) | ||
if (index < 0 || !isFinite(index)) | ||
return undefined; | ||
@@ -350,2 +350,21 @@ let next = this._first; | ||
/** | ||
* Adds a node with the given value to the start of the list. | ||
* Becomes the first node. | ||
* @param value | ||
* @return {this} | ||
*/ | ||
prependValue(value) { | ||
this.addNodeBefore({ value: value }); | ||
return this; | ||
} | ||
/** | ||
* Adds a node with the given value to the end of the list. | ||
* Becomes the last node. | ||
* @param value | ||
* @return {this} | ||
*/ | ||
appendValue(value) { | ||
return this.addNode({ value: value }); | ||
} | ||
/** | ||
* Returns an iterable that selects the value of each node. | ||
@@ -352,0 +371,0 @@ * @returns {Iterable} |
{ | ||
"name": "@tsdotnet/linked-node-list", | ||
"version": "1.2.10", | ||
"version": "1.3.0", | ||
"description": "An unprotected bi-directional linked list. Useful for implementing other collections.", | ||
@@ -30,3 +30,3 @@ "author": "electricessence", | ||
"postversion": "git push && git push --tags && npm run docs && git commit -m \"Updated docs.\" docs && git push", | ||
"test": "ts-node -P ./tsconfig.json ./node_modules/jasmine/bin/jasmine --config=spec/jasmine.json", | ||
"test": "mocha -r ts-node/register tests/**/*.ts", | ||
"validate": "node ./.build/validate-package.js" | ||
@@ -43,5 +43,7 @@ }, | ||
"devDependencies": { | ||
"@types/jasmine": "^3.5.10", | ||
"@types/chai": "^4.2.11", | ||
"@types/mocha": "^7.0.2", | ||
"@typescript-eslint/eslint-plugin": "^2.33.0", | ||
"@typescript-eslint/parser": "^2.33.0", | ||
"chai": "^4.2.0", | ||
"copyfiles": "^2.2.0", | ||
@@ -53,4 +55,5 @@ "eslint": "^7.0.0", | ||
"eslint-plugin-promise": "^4.2.1", | ||
"jasmine": "^3.5.0", | ||
"mocha": "^7.1.2", | ||
"npm-run-all": "^4.1.5", | ||
"nyc": "^15.0.1", | ||
"rimraf": "^3.0.2", | ||
@@ -57,0 +60,0 @@ "ts-node": "^8.10.1", |
# ![alt text](https://avatars1.githubusercontent.com/u/64487547?s=30 "tsdotnet") tsdotnet / linked-node-list | ||
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](https://github.com/tsdotnet/linked-node-list/blob/master/LICENSE) | ||
![100% code coverage](https://img.shields.io/badge/coverage-100%25-green) | ||
![npm-publish](https://github.com/tsdotnet/linked-node-list/workflows/npm-publish/badge.svg) | ||
@@ -5,0 +6,0 @@ [![npm version](https://img.shields.io/npm/v/@tsdotnet/linked-node-list.svg?style=flat-square)](https://www.npmjs.com/package/@tsdotnet/linked-node-list) |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
50999
983
26
18