-
Notifications
You must be signed in to change notification settings - Fork 0
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
code generation covering all webidl #1
Comments
Possibly. I was looking at typescript instead of WebIDL (e.g. https://github.com/microsoft/TypeScript/blob/main/lib/lib.dom.d.ts) as TS is much closer to C# than WebIDL like https://searchfox.org/mozilla-central/source/dom/webidl/Window.webidl |
Isn't the typescrpt generated from webidl? @yoshiki-okawa |
Maybe we could use this to generate the c# interop code? Am I looking at this right? |
What I mean is that I think it is possible to do code gen based on https://github.com/microsoft/TypeScript/blob/main/lib/lib.dom.d.ts to cover pretty much all WebIDL. lib.dom.d.ts is generated from MDN Web APIs (https://developer.mozilla.org/en-US/docs/Web/API) but pretty much same as WebIDL. |
Got it, I understand. But, would this be easier than changing https://github.com/microsoft/TypeScript-DOM-lib-generator to generate c# rather than typescript? I think it already iterates the webidl tree? Or is there something else I'm missing? |
Either way would work but I think code gen based on lib.dom.d.ts would be easier than understanding and modifying the generator. |
@yoshiki-okawa is this more in line w/ your thinking? From what I can tell, dart syntax looks a lot like c#? If I'm not mistaken, this project is generating dart wrappers from typescript typedefinitions? |
I'm wondering if there will also be demand in the near future for wrapping c++ w/ c# pinvoke wrappers? When using webassembly? (ie kill two birds w/ one stone) |
yes babylon_dart_gen is pretty much what's in my mind. |
my thinking was generating c# -> c++ pinvoke wrappers, where the c++ api is described in webidl. but the more I think about it, this sort of thing is probably better filled by something like protobuf. |
EbramTawfik/GeckoFX#3
Is it possible to wrap everything?
The text was updated successfully, but these errors were encountered: