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
4 months ago
..
5 branch149 4 months ago
2015 branch149 4 months ago
2016 branch149 4 months ago
2017 branch149 4 months ago
2018 branch149 4 months ago
2019 branch149 4 months ago
2020 branch149 4 months ago
2021 branch149 4 months ago
2022 branch149 4 months ago
2023 branch149 4 months ago
2024 branch149 4 months ago
helpers branch149 4 months ago
operations branch149 4 months ago
.editorconfig branch149 4 months ago
.eslintrc branch149 4 months ago
.nycrc branch149 4 months ago
CHANGELOG.md branch149 4 months ago
GetIntrinsic.js branch149 4 months ago
LICENSE branch149 4 months ago
README.md branch149 4 months ago
es5.js branch149 4 months ago
es6.js branch149 4 months ago
es7.js branch149 4 months ago
es2015.js branch149 4 months ago
es2016.js branch149 4 months ago
es2017.js branch149 4 months ago
es2018.js branch149 4 months ago
es2019.js branch149 4 months ago
es2020.js branch149 4 months ago
es2021.js branch149 4 months ago
es2022.js branch149 4 months ago
es2023.js branch149 4 months ago
es2024.js branch149 4 months ago
index.js branch149 4 months ago
package.json branch149 4 months ago
tmp.mjs branch149 4 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.