diff options
author | 2022-03-07 15:36:22 -0600 | |
---|---|---|
committer | 2022-03-07 15:36:22 -0600 | |
commit | f18ee36dc0abdc5c8ec87734de7962966d16fe65 (patch) | |
tree | c01a7034186cb0bbe5e1d042f4a5dd09bad21ed5 /packages/webapi/src/lib/TreeWalker.ts | |
parent | 10a9c3412b4f6e8607687a74eafdb150d3222047 (diff) | |
download | astro-f18ee36dc0abdc5c8ec87734de7962966d16fe65.tar.gz astro-f18ee36dc0abdc5c8ec87734de7962966d16fe65.tar.zst astro-f18ee36dc0abdc5c8ec87734de7962966d16fe65.zip |
Add `@astrojs/webapi` package (#2729)@astrojs/webapi@0.11.0
* chore: add @astrojs/webapi
* chore: update package.json
* fix: update file case
* fix: remove lowercase file
* chore: update tests to use mocha
* chore: update LICENSE
Diffstat (limited to 'packages/webapi/src/lib/TreeWalker.ts')
-rw-r--r-- | packages/webapi/src/lib/TreeWalker.ts | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/packages/webapi/src/lib/TreeWalker.ts b/packages/webapi/src/lib/TreeWalker.ts new file mode 100644 index 000000000..86e32ff20 --- /dev/null +++ b/packages/webapi/src/lib/TreeWalker.ts @@ -0,0 +1,55 @@ +import * as _ from './utils' + +export class TreeWalker { + parentNode(): Node | null { + return null + } + + firstChild(): Node | null { + return null + } + + lastChild(): Node | null { + return null + } + + previousSibling(): Node | null { + return null + } + + nextSibling(): Node | null { + return null + } + + previousNode(): Node | null { + return null + } + + nextNode(): Node | null { + return null + } + + get currentNode(): Node { + const internals = _.internalsOf<TreeWalkerInternals>(this, 'TreeWalker', 'currentNode') + return internals.currentNode + } + + get root(): Node { + const internals = _.internalsOf<TreeWalkerInternals>(this, 'TreeWalker', 'root') + return internals.root + } + + get whatToShow(): number { + const internals = _.internalsOf<TreeWalkerInternals>(this, 'TreeWalker', 'whatToShow') + return internals.whatToShow + } +} + +_.allowStringTag(TreeWalker) + +export interface TreeWalkerInternals { + filter: NodeFilter + currentNode: Node + root: Node + whatToShow: number +} |