Trait objc2::runtime::MethodImplementation

source ·
pub trait MethodImplementation: Sealed + Sized {
    type Callee: ?Sized + RefEncode;
    type Arguments: EncodeArguments;
    type Return: EncodeReturn;
}
Expand description

Types that can be used as the implementation of an Objective-C method.

This is a sealed trait that is implemented for a lot of extern "C" function pointer types.

Required Associated Types§

source

type Callee: ?Sized + RefEncode

The callee type of the method.

source

type Arguments: EncodeArguments

The argument types of the method.

source

type Return: EncodeReturn

The return type of the method.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<T, R> MethodImplementation for extern "C" fn(_: T, _: Sel) -> R

§

type Callee = <T as MessageReceiver>::__Inner

§

type Arguments = ()

§

type Return = R

source§

impl<T, R> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel) -> R

§

type Callee = <T as MessageReceiver>::__Inner

§

type Arguments = ()

§

type Return = R

source§

impl<T, R, A> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A) -> R

source§

impl<T, R, A> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A) -> R

source§

impl<T, R, A, B> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B) -> R

source§

impl<T, R, A, B> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B) -> R

source§

impl<T, R, A, B, C> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C) -> R

source§

impl<T, R, A, B, C> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C) -> R

source§

impl<T, R, A, B, C, D> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D) -> R

source§

impl<T, R, A, B, C, D> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D) -> R

source§

impl<T, R, A, B, C, D, E> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E) -> R

source§

impl<T, R, A, B, C, D, E> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E) -> R

source§

impl<T, R, A, B, C, D, E, F> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F) -> R

source§

impl<T, R, A, B, C, D, E, F> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F) -> R

source§

impl<T, R, A, B, C, D, E, F, G> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G) -> R

source§

impl<T, R, A, B, C, D, E, F, G> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L, M> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L, M> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L, M, N> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M, _: N) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L, M, N> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M, _: N) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M, _: N, _: O) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M, _: N, _: O) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> MethodImplementation for extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M, _: N, _: O, _: P) -> R

source§

impl<T, R, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> MethodImplementation for unsafe extern "C" fn(_: T, _: Sel, _: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M, _: N, _: O, _: P) -> R

Implementors§