Skip to content
This repository has been archived by the owner on Jun 23, 2023. It is now read-only.

feat(selectors): Refactor to use selectors #33

Merged
merged 3 commits into from
Jan 8, 2022
Merged

Conversation

bengreenier
Copy link
Contributor

Selectors allow the caller to identify a symbol (or set of symbols) using basic pattern matching. The spec for a selector is as follows:

<symbolTitle>[:<symbolChild>] or <symbolTitle>[:{<symbolChild>, ...}]

Where symbolTitle is:

[*A-Za-z0-9_\-]+

Where symbolChild is:

[*A-Za-z0-9_\- ]+

For example, here are some valid selectors:

MyType
MyType:MyParam
MyType:*Param
MyType:{MyParam1, MyParam2}

And some invalid selectors:

Fn1:param1, Fn2:param2
Fn1:{param1
Fn1:param1, param2
Fn1:param1}

See the tests for more info.

As a result, this change has several breaking changes as we've refactored the cli options:

  • BREAKING CHANGE: refactor clangffi cli arguments.
  • BREAKING CHANGE: move clangffi to ESM.
  • BREAKING CHANGE: refactor libclang-bindings visit options to require preprocessorDefinitions.

BREAKING CHANGE: refactor `clangffi` cli arguments.
BREAKING CHANGE: refactor `libclang-bindings` visit options to require `preprocessorDefinitions`.
@bengreenier bengreenier added the enhancement New feature or request label Jan 8, 2022
@bengreenier bengreenier merged commit 0801a4a into main Jan 8, 2022
@bengreenier bengreenier deleted the feat/selectors branch January 8, 2022 23:38
This was referenced Jan 8, 2022
@github-actions github-actions bot mentioned this pull request Mar 15, 2022
This was referenced Mar 24, 2022
@github-actions github-actions bot mentioned this pull request Apr 5, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
1 participant