Available on crate feature
rb-sys-interop
only.Required Methods
sourceunsafe fn from_raw(id: ID) -> Self
unsafe fn from_raw(id: ID) -> Self
Convert rb_sys::ID
to magnus::value::Id
.
Safety
You must only supply a valid, non-zero ID
obtained from rb-sys to this
function. Using a invalid Id
produced from this function will void all
saftey guarantees provided by Magnus.
use magnus::{Symbol, value::Id, rb_sys::{FromRawId, AsRawId}};
use std::convert::TryInto;
let foo: Id = Symbol::new("foo").into();
let from_raw_val: Symbol = unsafe { Id::from_raw(foo.as_raw()) }.into();
assert_eq!(from_raw_val.inspect(), ":foo");