Moritz Gunz
efe0e76a75
#[derive(Debug)] all the things ( #468 )
...
This commit implements Debug trait for most public structs.
2020-11-18 15:17:25 +01:00
Ben Noordhuis
0915d14efd
Revert "Fix rustdoc warnings ( #526 )" ( #528 )
...
This reverts commit 58ca728c5f
.
The commit passed CI but it's causing `cargo test` to fail locally for
me. This is with rustc 1.47.0.
2020-11-17 00:23:32 +01:00
Daniel Bevenius
58ca728c5f
Fix rustdoc warnings ( #526 )
...
This commit attempts to fix the reported warnings that are generated by
rustdoc.
2020-11-15 17:57:06 +01:00
Ben Noordhuis
3fa9fb36ed
Fix runtime assert when hashing module object ( #522 )
...
The blanket `std:#️⃣ :Hash` impl for instances of `v8::Data` invokes
`v8::internal::Object::GetHash()` but that crashes for `v8::Module`
objects. Use a custom impl that calls `v8::Module::get_identity_hash()`.
Fixes the following runtime assertion:
# Fatal error in ../../../v8/src/objects/objects-inl.h, line 1043
# Debug check failed: object.IsJSReceiver().
Refs: https://github.com/denoland/deno/pull/8354#discussion_r522157813
2020-11-15 00:07:52 +01:00
devsnek
405a5a5158
Add APIs to store/retrieve embedder data in a Context or Isolate snapshot ( #449 )
...
Co-authored-by: Bert Belder <bertbelder@gmail.com>
2020-09-10 02:39:49 +02:00
Gus Caplan
3b27748a17
Implement TryFrom<Data> for subclasses of Data ( #453 )
2020-09-09 02:21:58 +02:00
Bert Belder
9684640b48
Implement the 'Hash' trait for local and global handles ( #415 )
2020-07-08 10:27:34 +02:00
Bert Belder
91c8c7d1c7
Implement 'Eq' for all subtypes of 'Value' and its handles ( #414 )
2020-07-04 07:11:56 +02:00
Bert Belder
c13625148f
Refactor handle types 'Local' and 'Global' ( #410 )
...
* Merged all handle type implementations into one file ('handle.h').
* Made it so that `Global` handles cannot be empty.
* Renamed the `AsHandle` trait to `Handle`, and made it more generally
useful.
* Simplified how `PartialEq` is implemented for V8 heap objects and/or
the `Local`/`Global` handles that reference them.
2020-07-01 10:44:23 +02:00
Bert Belder
850af2e857
Remove 'FinalizationGroup' bindings ( #410 )
...
V8 no longer supports or even defines this type.
2020-07-01 10:44:23 +02:00
Bert Belder
3b6ed67f5e
Rewrite the scope system from scratch ( #406 )
2020-06-26 01:42:00 +02:00
Bert Belder
54f6bfe8c1
Reflow comments and strings that exceed the 80-char column limit ( #407 )
2020-06-17 06:15:08 +02:00
Bert Belder
9ef9c5f871
Make all V8 heap object types subtypes of v8::Data ( #351 )
...
In v8.h, not all heap object classes actually derive from `v8::Data`,
but this seems to be a mistake, because this hierarchy does definitely
exists in V8's internal source code.
2020-04-15 23:56:59 +02:00
Bert Belder
16d6ca2398
Re-generate data.rs from the latest version of v8.h ( #351 )
2020-04-15 23:23:20 +02:00
Bert Belder
d1ac68f0c8
Always use raw pointers to send V8 handles between C++ and Rust ( #349 )
...
And other pointer usage touch-ups on the C++ side:
- const parameters are passed by & reference.
- mutable parameters are passed by * pointer.
2020-04-14 00:34:32 +02:00
Bert Belder
675d585977
Add binding for v8__internal__GetIsolateFromHeapObject() ( #348 )
2020-04-13 02:18:05 +02:00
Bert Belder
e1b59ec736
Implement 'Eq' and 'PartialEq' traits for local handles ( #301 )
2020-03-05 19:37:58 -08:00
Bert Belder
926f3a19da
Update generated types/traits, and generate more types ( #300 )
2020-03-05 17:42:55 -08:00
Bert Belder
bd598fe8dc
Improve generated v8::Data type hierarchy and add tests ( #180 )
2020-01-04 03:27:43 +01:00
Bert Belder
64136e684e
Add safe downcasts for Local<Value> with TryFrom ( #166 ) ( #166 )
2020-01-03 08:41:16 -05:00
Ry Dahl
45b766c01f
happy new year ( #170 )
2020-01-02 13:57:00 -05:00
Ry Dahl
8f9aafe764
add impl_from and impl_deref macros for data.rs ( #161 )
2019-12-31 13:39:01 -05:00
Bert Belder
c205e73138
Generate Deref implementations for subtypes of v8::Data ( #160 )
2019-12-31 18:33:45 +01:00
Bert Belder
9a72f62bd6
Add complete V8 type hierarchy ( #148 )
2019-12-30 19:06:45 +01:00