Lines Matching defs:Symbol
214 /// Symbol is interpreted as-is; no mangling is done. This means that symbols like `x::y` are
220 pub unsafe fn get<T>(&self, symbol: &[u8]) -> Result<Symbol<T>, crate::Error> {
228 Some(Symbol {
241 pub unsafe fn get_ordinal<T>(&self, ordinal: WORD) -> Result<Symbol<T>, crate::Error> {
249 Some(Symbol {
326 /// A major difference compared to the cross-platform `Symbol` is that this does not ensure that the
327 /// `Symbol` does not outlive the `Library` that it comes from.
328 pub struct Symbol<T> {
333 impl<T> Symbol<T> {
334 /// Convert the loaded `Symbol` into a handle.
340 impl<T> Symbol<Option<T>> {
342 pub fn lift_option(self) -> Option<Symbol<T>> {
346 Some(Symbol {
354 unsafe impl<T: Send> Send for Symbol<T> {}
355 unsafe impl<T: Sync> Sync for Symbol<T> {}
357 impl<T> Clone for Symbol<T> {
358 fn clone(&self) -> Symbol<T> {
359 Symbol { ..*self }
363 impl<T> ::std::ops::Deref for Symbol<T> {
373 impl<T> fmt::Debug for Symbol<T> {
375 f.write_str(&format!("Symbol@{:p}", self.pointer))