pub struct PrePackagedResource {Show 29 fields
pub name: String,
pub is_package: bool,
pub is_namespace_package: bool,
pub in_memory_source: Option<FileData>,
pub in_memory_bytecode: Option<PythonModuleBytecodeProvider>,
pub in_memory_bytecode_opt1: Option<PythonModuleBytecodeProvider>,
pub in_memory_bytecode_opt2: Option<PythonModuleBytecodeProvider>,
pub in_memory_extension_module_shared_library: Option<FileData>,
pub in_memory_resources: Option<BTreeMap<String, FileData>>,
pub in_memory_distribution_resources: Option<BTreeMap<String, FileData>>,
pub in_memory_shared_library: Option<FileData>,
pub shared_library_dependency_names: Option<Vec<String>>,
pub relative_path_module_source: Option<(String, FileData)>,
pub relative_path_bytecode: Option<(String, String, PythonModuleBytecodeProvider)>,
pub relative_path_bytecode_opt1: Option<(String, String, PythonModuleBytecodeProvider)>,
pub relative_path_bytecode_opt2: Option<(String, String, PythonModuleBytecodeProvider)>,
pub relative_path_extension_module_shared_library: Option<(PathBuf, FileData)>,
pub relative_path_package_resources: Option<BTreeMap<String, (PathBuf, FileData)>>,
pub relative_path_distribution_resources: Option<BTreeMap<String, (PathBuf, FileData)>>,
pub relative_path_shared_library: Option<(String, PathBuf, FileData)>,
pub is_module: bool,
pub is_builtin_extension_module: bool,
pub is_frozen_module: bool,
pub is_extension_module: bool,
pub is_shared_library: bool,
pub is_utf8_filename_data: bool,
pub file_executable: bool,
pub file_data_embedded: Option<FileData>,
pub file_data_utf8_relative_path: Option<(PathBuf, FileData)>,
}
Expand description
Represents a Python resource entry before it is packaged.
Instances hold the same fields as Resource
except fields holding
content are backed by a FileData
instead of Vec<u8>
, since
we want data resolution to be lazy. In addition, bytecode can either be
provided verbatim or via source.
Fields
name: String
is_package: bool
is_namespace_package: bool
in_memory_source: Option<FileData>
in_memory_bytecode: Option<PythonModuleBytecodeProvider>
in_memory_bytecode_opt1: Option<PythonModuleBytecodeProvider>
in_memory_bytecode_opt2: Option<PythonModuleBytecodeProvider>
in_memory_resources: Option<BTreeMap<String, FileData>>
in_memory_distribution_resources: Option<BTreeMap<String, FileData>>
relative_path_module_source: Option<(String, FileData)>
relative_path_bytecode: Option<(String, String, PythonModuleBytecodeProvider)>
relative_path_bytecode_opt1: Option<(String, String, PythonModuleBytecodeProvider)>
relative_path_bytecode_opt2: Option<(String, String, PythonModuleBytecodeProvider)>
relative_path_package_resources: Option<BTreeMap<String, (PathBuf, FileData)>>
relative_path_distribution_resources: Option<BTreeMap<String, (PathBuf, FileData)>>
is_module: bool
is_builtin_extension_module: bool
is_frozen_module: bool
is_extension_module: bool
is_utf8_filename_data: bool
file_executable: bool
file_data_embedded: Option<FileData>
file_data_utf8_relative_path: Option<(PathBuf, FileData)>
Implementations
sourceimpl PrePackagedResource
impl PrePackagedResource
sourcepub fn is_python_resource(&self) -> bool
pub fn is_python_resource(&self) -> bool
Whether this resource represents a Python resource.
sourcepub fn to_resource<'a>(
&self,
compiler: &mut dyn PythonBytecodeCompiler
) -> Result<(Resource<'a, u8>, Vec<FileInstall>)>
pub fn to_resource<'a>(
&self,
compiler: &mut dyn PythonBytecodeCompiler
) -> Result<(Resource<'a, u8>, Vec<FileInstall>)>
Convert the instance to a Resource
.
This will compile bytecode from source code using the specified compiler. It will also emit a list of file installs that must be performed for all referenced resources to function as intended.
Trait Implementations
sourceimpl Clone for PrePackagedResource
impl Clone for PrePackagedResource
sourcefn clone(&self) -> PrePackagedResource
fn clone(&self) -> PrePackagedResource
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for PrePackagedResource
impl Debug for PrePackagedResource
sourceimpl Default for PrePackagedResource
impl Default for PrePackagedResource
sourcefn default() -> PrePackagedResource
fn default() -> PrePackagedResource
Returns the “default value” for a type. Read more
sourceimpl PartialEq<PrePackagedResource> for PrePackagedResource
impl PartialEq<PrePackagedResource> for PrePackagedResource
sourcefn eq(&self, other: &PrePackagedResource) -> bool
fn eq(&self, other: &PrePackagedResource) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &PrePackagedResource) -> bool
fn ne(&self, other: &PrePackagedResource) -> bool
This method tests for !=
.
impl StructuralPartialEq for PrePackagedResource
Auto Trait Implementations
impl RefUnwindSafe for PrePackagedResource
impl Send for PrePackagedResource
impl Sync for PrePackagedResource
impl Unpin for PrePackagedResource
impl UnwindSafe for PrePackagedResource
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more