Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Fix enum parsing bug regarding decimal digit characters #79

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

Merged
merged 2 commits into from
Oct 27, 2022

Conversation

stephen-hansen
Copy link
Contributor

Currently if I have an enum of the form

enum Foobar
{
    A_t = 9,
    B_t = '9'
};

CppHeaderParser will parse out the enum values as

[
    {"name": "A_t", "value": 9},
    {"name": "B_t", "value": 9}
]

Clearly this is wrong, the enum values should be

[
    {"name": "A_t", "value": 9},
    {"name": "B_t", "raw_value": "9", "value": 57}
]

where B_t represents the Unicode value for the character "9" (and not the actual integer value 9).

This PR includes the changes necessary to fix the enum parse logic. I've also updated a unit test to check this case and it passes with these changes.

@virtuald virtuald merged commit 72dc4e8 into robotpy:main Oct 27, 2022
@virtuald
Copy link
Member

Thanks!

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