Skip to content

Commit b3ead03

Browse files
committed
feature: @putout/operator-keyword: isTSKeyword
1 parent a9178dc commit b3ead03

File tree

3 files changed

+33
-0
lines changed

3 files changed

+33
-0
lines changed

packages/operator-keyword/README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import {operator} from 'putout';
1818

1919
const {
2020
isKeyword,
21+
isTSKeyword,
2122
isDeclarationKeyword,
2223
isModuleDeclarationKeyword,
2324
isConditionKeyword,
@@ -46,6 +47,10 @@ true;
4647
isStatementKeyword('for');
4748
// returns
4849
true;
50+
51+
isTSKeyword('implements');
52+
// returns
53+
true;
4954
```
5055

5156
## License

packages/operator-keyword/lib/keyword.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ const conditions = ['if'];
1616
const typescript = [
1717
'interface',
1818
'readonly',
19+
'static',
20+
'implements',
1921
];
2022

2123
const expressions = [
@@ -67,3 +69,7 @@ module.exports.isConditionKeyword = (name) => {
6769
module.exports.isStatementKeyword = (name) => {
6870
return statements.includes(name);
6971
};
72+
73+
module.exports.isTSKeyword = (name) => {
74+
return typescript.includes(name);
75+
};

packages/operator-keyword/lib/keyword.spec.js

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
const {test} = require('supertape');
44
const {
55
isKeyword,
6+
isTSKeyword,
67
isDeclarationKeyword,
78
isConditionKeyword,
89
isModuleDeclarationKeyword,
@@ -92,3 +93,24 @@ test('putout: operator: isStatementKeyword: readonly', (t) => {
9293
t.ok(result);
9394
t.end();
9495
});
96+
97+
test('putout: operator: isStatementKeyword: static', (t) => {
98+
const result = isKeyword('static');
99+
100+
t.ok(result);
101+
t.end();
102+
});
103+
104+
test('putout: operator: isStatementKeyword: implements', (t) => {
105+
const result = isKeyword('implements');
106+
107+
t.ok(result);
108+
t.end();
109+
});
110+
111+
test('putout: operator: isTSKeyword: implements', (t) => {
112+
const result = isTSKeyword('implements');
113+
114+
t.ok(result);
115+
t.end();
116+
});

0 commit comments

Comments
 (0)