mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
style: Remove HasArcFFI for some types
See blocked bug. For non-Locked types we can just use the same underlying type at the FFI boundary. Port StylesheetContents and CssUrlData to this set-up. CssUrlData is already generated by cbindgen anyways. Differential Revision: https://phabricator.services.mozilla.com/D177559
This commit is contained in:
parent
d9d865e8c9
commit
779aa9d30e
4 changed files with 42 additions and 40 deletions
|
@ -221,7 +221,7 @@ impl<T> Arc<T> {
|
|||
///
|
||||
/// It is recommended to use RawOffsetArc for this.
|
||||
#[inline]
|
||||
fn into_raw(this: Self) -> *const T {
|
||||
pub fn into_raw(this: Self) -> *const T {
|
||||
let ptr = unsafe { &((*this.ptr()).data) as *const _ };
|
||||
mem::forget(this);
|
||||
ptr
|
||||
|
@ -231,10 +231,8 @@ impl<T> Arc<T> {
|
|||
///
|
||||
/// Note: This raw pointer will be offset in the allocation and must be preceded
|
||||
/// by the atomic count.
|
||||
///
|
||||
/// It is recommended to use RawOffsetArc for this
|
||||
#[inline]
|
||||
unsafe fn from_raw(ptr: *const T) -> Self {
|
||||
pub unsafe fn from_raw(ptr: *const T) -> Self {
|
||||
// To find the corresponding pointer to the `ArcInner` we need
|
||||
// to subtract the offset of the `data` field from the pointer.
|
||||
let ptr = (ptr as *const u8).sub(data_offset::<T>());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue