Skip to content

Support structured labels #87

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

Open
buzden opened this issue Sep 20, 2023 · 1 comment
Open

Support structured labels #87

buzden opened this issue Sep 20, 2023 · 1 comment
Labels
code: redesign New design of some part of the library part: generators Related to generators part: labels Related to the labelling mechanism status: discussion Suggested or reported thing is not obvious to be good enough status: feature request Request for new functionality or improvement

Comments

@buzden
Copy link
Owner

buzden commented Sep 20, 2023

Currently with the model coverage mechanism we can provide structured resulting information:

Whatever.FieldList.FieldIsTyped covered partially
  - Here: covered
  - There: not covered

Whatever.FieldList.FieldList covered fully
  - Ext: covered
  - Nil: covered

Data.Fin.Fin covered fully
  - FS: covered
  - FZ: covered

To achieve this, we are using labelling mechanism, which now supports only plain Strings as labels.

We could

  • support typed labels, so we can say that this is mentioning of a type or a constructor, or something else; open question: if set of this types should be open or preset;
  • support structured labels, so we can say that e.g. a constructor label is a sublabel of a type label; using this, we could get such structured labelling information automatically; open question: currently, model coverage has a macro that calculates the full set of possible labels beforehand, but just addition of a support for structured labels won't give this ability, so this won't replace the current mechanism of model coverage; maybe, we should support additional labelling mechanism as "potential labels", i.e., a generator says "oh, by the way, I can in theory use the following (structured) labels"; will this impact runtime performance badly?
@buzden buzden added status: discussion Suggested or reported thing is not obvious to be good enough part: generators Related to generators status: feature request Request for new functionality or improvement code: redesign New design of some part of the library part: labels Related to the labelling mechanism labels Sep 20, 2023
@buzden
Copy link
Owner Author

buzden commented Sep 20, 2023

To think: a label type of "begin the subblock X", "end the subblock X"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code: redesign New design of some part of the library part: generators Related to generators part: labels Related to the labelling mechanism status: discussion Suggested or reported thing is not obvious to be good enough status: feature request Request for new functionality or improvement
Projects
None yet
Development

No branches or pull requests

1 participant