You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
YZY eef3e25414
branch149
11 months ago
..
5 branch149 11 months ago
2015 branch149 11 months ago
2016 branch149 11 months ago
2017 branch149 11 months ago
2018 branch149 11 months ago
2019 branch149 11 months ago
2020 branch149 11 months ago
2021 branch149 11 months ago
2022 branch149 11 months ago
2023 branch149 11 months ago
2024 branch149 11 months ago
helpers branch149 11 months ago
operations branch149 11 months ago
.editorconfig branch149 11 months ago
.eslintrc branch149 11 months ago
.nycrc branch149 11 months ago
CHANGELOG.md branch149 11 months ago
GetIntrinsic.js branch149 11 months ago
LICENSE branch149 11 months ago
README.md branch149 11 months ago
es5.js branch149 11 months ago
es6.js branch149 11 months ago
es7.js branch149 11 months ago
es2015.js branch149 11 months ago
es2016.js branch149 11 months ago
es2017.js branch149 11 months ago
es2018.js branch149 11 months ago
es2019.js branch149 11 months ago
es2020.js branch149 11 months ago
es2021.js branch149 11 months ago
es2022.js branch149 11 months ago
es2023.js branch149 11 months ago
es2024.js branch149 11 months ago
index.js branch149 11 months ago
package.json branch149 11 months ago
tmp.mjs branch149 11 months ago

README.md

es-abstract Version Badge

dependency status dev dependency status License Downloads

npm badge

ECMAScript spec abstract operations.

Every operation is available by edition/year and by name - for example, es-abstract/2020/Call gives you the Call operation from ES2020, es-abstract/5/Type gives you the Type operation from ES5.

All abstract operations are also available under an es5/es2015/es2016/es2017/es2018/es2019/es2020/es2021 entry point, and as a property on the main export, but using deep imports is highly encouraged for bundle size and performance reasons. Non-deep entry points will be removed in the next semver-major release.

Example

var ES = require('es-abstract');
var assert = require('assert');

assert(ES.isCallable(function () {}));
assert(!ES.isCallable(/a/g));

Tests

Simply clone the repo, npm install, and run npm test

Security

Please email @ljharb or see https://tidelift.com/security if you have a potential security vulnerability to report.