Skip to main content

PerlBuildMode

Enum PerlBuildMode 

Source
pub enum PerlBuildMode {
    Threaded,
    NonThreaded,
}
Expand description

対象 perl の build mode

Threaded-Dusethreads でビルドされた perl (PERL_IMPLICIT_CONTEXT / MULTIPLICITY が定義されている)。 関数は my_perl: *mut PerlInterpreter を第一引数に取り、 マクロは aTHX_my_perl を伝播する。

NonThreaded-Uusethreads の perl。pTHX_ / aTHX_ は 空展開され、関数は my_perl を取らない。PL_curcop 等のグローバル は実 extern 変数として bindings に出る。

Variants§

§

Threaded

§

NonThreaded

Implementations§

Source§

impl PerlBuildMode

Source

pub fn detect_from_perl_config() -> Result<Self, PerlConfigError>

Config{usethreads} を読んで自動検出する

判定順:

  1. Config{usethreads} == "define"Threaded
  2. それ以外("undef" / 空文字列)→ NonThreaded
Source

pub fn is_threaded(self) -> bool

Trait Implementations§

Source§

impl Clone for PerlBuildMode

Source§

fn clone(&self) -> PerlBuildMode

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for PerlBuildMode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for PerlBuildMode

Source§

fn eq(&self, other: &PerlBuildMode) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for PerlBuildMode

Source§

impl Eq for PerlBuildMode

Source§

impl StructuralPartialEq for PerlBuildMode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.