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

Create a dependency graph of a big project #233

Open
javValverde opened this issue Nov 30, 2023 · 3 comments
Open

Create a dependency graph of a big project #233

javValverde opened this issue Nov 30, 2023 · 3 comments

Comments

@javValverde
Copy link

Hi,
I am interested in making a dependency graph of a big project, and I think this tool is a great match for it.
Ideally I interface via python with the VHDL language server.
Can you please provide me with some infos as how can I do this. Is there any documentation/examples where I can check the API of the server?

@kraigher
Copy link
Member

The project is organized as two crates:

  • The vhdl_lang library crate is the core part that parses and analyses VHDL and provides all the languages queries.
  • vhdl_ls executable crate implements the language server protocol using vhdl_lang under the hood.

The dependency graph between all design units is created internally in vhdl_lang. You cannot access it via the public API at the moment. We are currently disucssion how a public API should look like #219. It would be reasonable to have a way to query the dependencies of design units using this API and I think it should be added there. We will see when we get to it though, as this is just an unpaid hobby project I will not make any promises on any timeframes.

What I can say for sure is I have no interest in adding any Python wrappers to vhdl_lang in this repository. That you would have to create yourself in your own repo.

@javValverde
Copy link
Author

It actually sounds great and I look forward to it.
I have no problem writing the python bindings myself. Is the interfacing rpc/json based? Or rather calling rust from python?

Thanks for the reply and for the great project!

@javValverde
Copy link
Author

And of course, let me know if there is any draft/beta API that I can play with

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants