-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Refactor #1524
Refactor #1524
Commits on Apr 20, 2020
-
Compute instance exports on demand.
Instead having instances eagerly compute a Vec of Externs, and bumping the refcount for each Extern, compute Externs on demand. This also enables `Instance::get_export` to avoid doing a linear search. This also means that the closure returned by `get0` and friends now holds an `InstanceHandle` to dynamically hold the instance live rather than being scoped to a lifetime.
Configuration menu - View commit details
-
Copy full SHA for 6ff9c4c - Browse repository at this point
Copy the full SHA 6ff9c4cView commit details -
Compute module imports and exports on demand too.
And compute Extern::ty on demand too.
Configuration menu - View commit details
-
Copy full SHA for 725355d - Browse repository at this point
Copy the full SHA 725355dView commit details -
Rename wasmtime_environ::Export to EntityIndex.
This helps differentiate it from other Export types in the tree, and describes what it is.
Configuration menu - View commit details
-
Copy full SHA for e058c04 - Browse repository at this point
Copy the full SHA e058c04View commit details -
Configuration menu - View commit details
-
Copy full SHA for 05f7534 - Browse repository at this point
Copy the full SHA 05f7534View commit details -
Configuration menu - View commit details
-
Copy full SHA for d1f2996 - Browse repository at this point
Copy the full SHA d1f2996View commit details -
Configuration menu - View commit details
-
Copy full SHA for 677ab4e - Browse repository at this point
Copy the full SHA 677ab4eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d5c016 - Browse repository at this point
Copy the full SHA 8d5c016View commit details -
Configuration menu - View commit details
-
Copy full SHA for d9a813c - Browse repository at this point
Copy the full SHA d9a813cView commit details -
Make
Instance::exports
return the export names.This significantly simplifies the public API, as it's relatively common to need the names, and this avoids the need to do a zip with `Module::exports`. This also changes `ImportType` and `ExportType` to have public members instead of private members and accessors, as I find that simplifies the usage particularly in cases where there are temporary instances.
Configuration menu - View commit details
-
Copy full SHA for 73c82b7 - Browse repository at this point
Copy the full SHA 73c82b7View commit details -
This doesn't quite remove `Instance`'s `module` member, it gets a step closer.
Configuration menu - View commit details
-
Copy full SHA for a7bf93e - Browse repository at this point
Copy the full SHA a7bf93eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9cf5fb7 - Browse repository at this point
Copy the full SHA 9cf5fb7View commit details -
Don't consume self in the
Func::get*
methods.Instead, just create a closure containing the instance handle and the export for them to call.
Configuration menu - View commit details
-
Copy full SHA for 842bd95 - Browse repository at this point
Copy the full SHA 842bd95View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1148814 - Browse repository at this point
Copy the full SHA 1148814View commit details -
Configuration menu - View commit details
-
Copy full SHA for e32dcf5 - Browse repository at this point
Copy the full SHA e32dcf5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5ddf2b3 - Browse repository at this point
Copy the full SHA 5ddf2b3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 366e8c4 - Browse repository at this point
Copy the full SHA 366e8c4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1811256 - Browse repository at this point
Copy the full SHA 1811256View commit details -
Configuration menu - View commit details
-
Copy full SHA for ad9414d - Browse repository at this point
Copy the full SHA ad9414dView commit details -
Configuration menu - View commit details
-
Copy full SHA for b2b5e8d - Browse repository at this point
Copy the full SHA b2b5e8dView commit details -
Configuration menu - View commit details
-
Copy full SHA for e4b07c5 - Browse repository at this point
Copy the full SHA e4b07c5View commit details -
Make wasmtime::Export's fields private.
This makes them more consistent with ExportType.
Configuration menu - View commit details
-
Copy full SHA for b53c7c1 - Browse repository at this point
Copy the full SHA b53c7c1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8050fea - Browse repository at this point
Copy the full SHA 8050feaView commit details -
Make a lifetime parameter explicit, and use better lifetime names.
Instead of 'me, use 'instance and 'module to make it clear what the lifetime is.
Configuration menu - View commit details
-
Copy full SHA for 8d96fff - Browse repository at this point
Copy the full SHA 8d96fffView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2ce07d0 - Browse repository at this point
Copy the full SHA 2ce07d0View commit details