-
-
Notifications
You must be signed in to change notification settings - Fork 670
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
Auto-generate defines and metas from JSON files #8195
Auto-generate defines and metas from JSON files #8195
Conversation
Does it play well with merlin? |
@@ -22,6 +22,7 @@ MAKEFILENAME?=Makefile | |||
PLATFORM?=unix | |||
|
|||
OUTPUT=haxe | |||
PREBUILD_OUTPUT=prebuild |
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.
it should be added to .gitignore
What's the status here? |
I was unable to solve the CI build failure. It's probably related to the build order somehow but I cannot reproduce it at all (even works with |
Can you try if it reproduces after a |
I tried to reproduce yesterday locally, and couldn't even with |
On what OS? |
Linux (arch linux) |
Did you try with a fresh checkout or |
@@ -122,20 +122,29 @@ | |||
"doc": "Erase generic classes on C#", | |||
"platforms": ["cs"] | |||
}, | |||
{ | |||
"name": "EvalCallStackDepth", |
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.
One thing I've wondered, isn't having both name
and define
a bit redundant (i.e. couldn't one be derived from the other, or are there exceptions)?
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.
Originally you could probably derive the defines from the OCaml name (except the unfortunate case of HxcppSmartStings
, which somehow went by unnoticed). Since dot notation was introduced into metadata, the mapping may be less obvious – there are still many fields which use the un-dotted identifier. For defines this might be easier?
But to be honest I did not thoroughly think about unifying name
and define
(or metadata
). I also think it's fine if it is done as part of another PR at some point.
Facilitates easier integration of defines / metadata with the manual, IDE integration, etc. Closes #8035.
type strict_defined
,type strict_meta
) along with their description functions (infos
,get_info
) moved into JSON filessrc-json/define.json
andsrc-json/meta.json
prebuild
OCaml utility added as aMakefile
step, parses JSON + outputs OCaml files(should work if we addworks as-isS _build/src/core/defineList.ml
andS _build/src/core/metaList.ml
to.merlin
)