Struct InterpreterConfig

Source
pub struct InterpreterConfig { /* private fields */ }
Expand description

The convenient way to create rustpython_vm::Interpreter with stdlib and other stuffs.

Basic usage:

let interpreter = rustpython::InterpreterConfig::new()
    .init_stdlib()
    .interpreter();

To override rustpython_vm::Settings:

use rustpython_vm::Settings;
// Override your settings here.
let mut settings = Settings::default();
settings.debug = true;
// You may want to add paths to `rustpython_vm::Settings::path_list` to allow import python libraries.
settings.path_list.push("".to_owned());  // add current working directory
let interpreter = rustpython::InterpreterConfig::new()
    .settings(settings)
    .interpreter();

To add native modules:

let interpreter = rustpython::InterpreterConfig::new()
    .init_stdlib()
    .init_hook(Box::new(|vm| {
        vm.add_native_module(
            "your_module_name".to_owned(),
            Box::new(your_module::make_module),
        );
    }))
    .interpreter();

Implementations§

Source§

impl InterpreterConfig

Source

pub fn new() -> Self

Source

pub fn interpreter(self) -> Interpreter

Source

pub fn settings(self, settings: Settings) -> Self

Source

pub fn init_hook(self, hook: Box<dyn FnOnce(&mut VirtualMachine)>) -> Self

Source

pub fn add_native_module( self, name: String, make_module: fn(&VirtualMachine) -> PyRef<PyModule>, ) -> Self

Source

pub fn init_stdlib(self) -> Self

Trait Implementations§

Source§

impl Default for InterpreterConfig

Source§

fn default() -> InterpreterConfig

Returns the “default value” for a type. Read more

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, U> ExactFrom<T> for U
where U: TryFrom<T>,

Source§

fn exact_from(value: T) -> U

Source§

impl<T, U> ExactInto<U> for T
where U: ExactFrom<T>,

Source§

fn exact_into(self) -> U

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T, U> OverflowingInto<U> for T
where U: OverflowingFrom<T>,

Source§

impl<T, U> RoundingInto<U> for T
where U: RoundingFrom<T>,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> SaturatingInto<U> for T
where U: SaturatingFrom<T>,

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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T, U> WrappingInto<U> for T
where U: WrappingFrom<T>,

Source§

fn wrapping_into(self) -> U

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy