-
-
Notifications
You must be signed in to change notification settings - Fork 358
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
Wrong CtRole? #1386
Comments
Sorry for the several bugs.
My bad I forgot to change that one. I think I will but several role on this field (ex: `@MetamodelPropertyField(role = [FIELD, MOTHOD, NESTED_TYPE, CONSTRUCTOR])
We want to remove CtContinueImpl#labelledStatement because it is the statement that is pointed by the label of the continue. We can lookup this value see #1381
I am not a big fan to put CtNewClassImpl#anonymousClass as an EXPRESSION but I did not want to create an annotation for this case because it is an artificial role. I don't know what to do.
This is useful thanks |
I understand this meta model stuff as incubation = not finish, bug full, to be changed ..., so I really do not complain! I just wanted to point to the potential problems , so they are found and solved sooner. Thank You for Your effort!
This is conceptual question - How many roles may have a field? In some use cases, the one role is correct. In others the more roles are correct. So solution might be:
|
Is it correct that
CtSwitchImpl#cases
has role CASE andCtCaseImpl#caseExpression
has tole CASE too ? I suggest to use different roles for these different meanings.CtTypeImpl#typeMembers
has role FIELD. I guess it is confusing. The role name should TYPE_MEMBER, because it may contain fields, methods, constructors and inner types.CtContinueImpl#labelledStatement
has role LABEL, it is the same role likeCtStatementImpl#label
. I guessCtContinueImpl#labelledStatement
should have role TARGET_LABEL.I also wonder why
CtBreakImpl#targetLabel
has type String andCtContinueImpl#labelledStatement
has type CtStatement. Why that difference?Is it correct that same roles are using different target types? For example:
But sometime it is correct, for example:
because CtStatement can be converted to CtBlock
I have extracted all 1) field type, 2) field name, 3) role name, 4) declaring type name
into this CSV file fields.txt
You can open it in MS Excel and sort by some column and easily see other inconsistencies too.
The text was updated successfully, but these errors were encountered: