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

Additional parsing functionality #5

Closed
wants to merge 14 commits into from
Closed

Additional parsing functionality #5

wants to merge 14 commits into from

Conversation

james-ward
Copy link
Contributor

Correct version of code that can parse SAE J2735 as shown here:
http://www.sae.org/standardsdev/dsrc/DSRC_R36_Source.ASN

@kimgr
Copy link
Owner

kimgr commented Nov 30, 2013

Thank you! I won't be able to look at this for a while, but it's much appreciated.

In the meantime, any chance you could add tests for the basic constructs you've added? Under testdata/ there are example ASN.1 definitions for isolated constructs (IA5String should go in string_types.asn, for example) and a public/ directory where DSRC_R36_Source.ASN would be welcome.

Thanks!

James Ward added 14 commits December 4, 2013 09:46
Test for extension marker with enumerated type.
Allow hex or binary references for assignment.

Go back through the module's dependency graph to determine the root type
and parse the string accordingly.
Default to stdin for input if no argument provided.
Add import statements if generating more than one module.

Test for multiple modules. No cross referencing.
Test for IA5String.
…raint.

Process size constraints for types.
Only allow constraints for those types defined in the specs.
@kimgr
Copy link
Owner

kimgr commented Dec 15, 2013

I've looked over most of the commits now, and I just want to say thanks again! And thanks for the tests, I didn't notice them the first time around... :o)

I think some of the solutions have ended up in the wrong place (e.g. sema should not care about Python names, that belongs in codegen), but most of this looks immediately useful.

I don't think I want to merge everything as-is, but I'd be happy to adjust it to my preference if that's OK with you?

@james-ward
Copy link
Contributor Author

Kim,
I'm more than happy for you to clean things up for me!
I agree with all of your criticisms - I have to admit that this was all
a bit of a hack-job to get the functionality I wanted!

Cheers,
James

On 16/12/13 07:01, Kim Gräsman wrote:

I've looked over most of the commits now, and I just want to say
thanks again! And thanks for the tests, I didn't notice them the first
time around... :o)

I think some of the solutions have ended up in the wrong place (e.g.
sema should not care about Python names, that belongs in codegen), but
most of this looks immediately useful.

I don't think I want to merge everything as-is, but I'd be happy to
adjust it to my preference if that's OK with you?


Reply to this email directly or view it on GitHub
#5 (comment).

James Ward
Australian Centre for Field Robotics
The Rose Street Building J04
The University of Sydney, NSW 2006, Australia

kimgr referenced this pull request in DanielDodson/asn1ate Jan 11, 2014
…ed to a range.

Bit string now optionally has a succeeding list of named bits.
Added possiblility to use identifiers in ASN.1 with hypens by transposing each occurence of this character to a Z.
@kimgr
Copy link
Owner

kimgr commented Jul 26, 2014

I think I've finally fixed everything this PR covers, except for the multi-module codegen.

That's an interesting problem in its own right, but I think I'll defer it for now. It might make sense to build a more sophisticated codegen driver to handle it.

So, a big thank-you for all your help with this! I'll close this, if you run into problems with my approach, please post new issues.

  • Kim

@kimgr kimgr closed this Jul 26, 2014
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

Successfully merging this pull request may close these issues.

2 participants