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
Add dlang codegen #623
Add dlang codegen #623
Conversation
This pull request introduces 1 alert when merging b33356a into 3059ff0 - view on LGTM.com new alerts:
|
I updated schema-salad-d to make generated parser with cleaner interface. Also, I consider to remove or rename hand-written parser in schema-salad-d because it occupies |
I updated schema-salad-d and codegen to correctly handle I will add a function to add unittest for given examples to make this request ready to merge. |
Now it can support It adds |
Now it mostly passes all the tests for CWL v1.0, v1.1 and v1.2! The rest of the failed tests are due to the limitation of the backend YAML parser that only supports v1.1 spec. |
Code cleanup is needed but it is mostly ready to review! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Woohoo!
Can you add a dlang entry to the table at https://github.com/common-workflow-language/schema_salad#codegen-examples ?
Added! |
Codecov Report
@@ Coverage Diff @@
## main #623 +/- ##
==========================================
+ Coverage 83.39% 83.43% +0.03%
==========================================
Files 19 20 +1
Lines 3885 4039 +154
Branches 1050 1096 +46
==========================================
+ Hits 3240 3370 +130
- Misses 414 426 +12
- Partials 231 243 +12
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking great!
Can you add very minimal tests like we have for c++ in
def test_cwl_cpp_gen(tmp_path: Path) -> None: |
I added a unittest for it! |
Thank you very much, @tom-tan ! |
This request adds a new codegen for D programming language (dlang).
It only generates a declaration for each data structure and the parser is automatically generated from the declaration with schema-salad-d.
My personal goal is to replace my hand-written CWL parser with auto-generated one.
Todo (needed to be merged):
Future works of codegened parser:
subScope
Here is a list of known issues
secondaryFilesDSL