Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Combine vsc-lib and ifex tools (ifex_ast) #45

Open
gunnarx opened this issue Nov 7, 2022 · 0 comments
Open

Combine vsc-lib and ifex tools (ifex_ast) #45

gunnarx opened this issue Nov 7, 2022 · 0 comments
Labels
Design discussion Things that need some thinking, and feedback from several to find consensus first.

Comments

@gunnarx
Copy link
Collaborator

gunnarx commented Nov 7, 2022

This work is being done in #31
The idea is to provide convience functions to create nodes in a VSC tree. This is what vsclib does. It also does a few other things like checking if a mentioned typedef can be found, following namespace/scoping rules.

Now that the implementation defines the language in one specific file: vsc_ast.py, the vsc-lib should be rewritten to use that exact definition.

  • One way is to import vsc_ast and add functions that return such types. This keeps the vsc_ast classes as pure dataclasses. (They have the information but not any operations)
  • Another way is to provide operations inside the classes. This is a more traditional OO approach, to provide data and the operations combined in a class, but it will add a lot more text to vsc_ast.py so it will be less readable as a kind of "specification" of the language.
@gunnarx gunnarx changed the title Combine vsc-lib and vsc Combine vsc-lib and vsc-tools (vsc_ast) Nov 7, 2022
@gunnarx gunnarx changed the title Combine vsc-lib and vsc-tools (vsc_ast) Combine vsc-lib and ifex tools (ifex_ast) Apr 13, 2023
@gunnar-mb gunnar-mb added discussion Things that need some thinking, and feedback from several to find consensus first. Design labels Jan 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Design discussion Things that need some thinking, and feedback from several to find consensus first.
Projects
None yet
Development

No branches or pull requests

2 participants