Struct wit_parser::UnresolvedPackageGroup

source ·
pub struct UnresolvedPackageGroup {
    pub packages: Vec<UnresolvedPackage>,
    pub source_map: SourceMap,
}
Expand description

Tracks a set of packages, all pulled from the same group of WIT source files.

Fields§

§packages: Vec<UnresolvedPackage>

A set of packages that share source file(s).

§source_map: SourceMap

A set of processed source files from which these packages have been parsed.

Implementations§

source§

impl UnresolvedPackageGroup

source

pub fn new() -> UnresolvedPackageGroup

Creates an empty set of packages.

source

pub fn parse( path: impl AsRef<Path>, contents: &str, ) -> Result<UnresolvedPackageGroup>

Parses the given string as a wit document.

The path argument is used for error reporting. The contents provided are considered to be the contents of path. This function does not read the filesystem.

source

pub fn parse_path(path: impl AsRef<Path>) -> Result<UnresolvedPackageGroup>

Parse a WIT package at the provided path.

The path provided is inferred whether it’s a file or a directory. A file is parsed with UnresolvedPackageGroup::parse_file and a directory is parsed with UnresolvedPackageGroup::parse_dir.

source

pub fn parse_file(path: impl AsRef<Path>) -> Result<UnresolvedPackageGroup>

Parses a WIT package from the file provided.

The return value represents all packages found in the WIT file which might be either one or multiple depending on the syntax used.

source

pub fn parse_dir(path: impl AsRef<Path>) -> Result<UnresolvedPackageGroup>

Parses a WIT package from the directory provided.

This method will look at all files under the path specified. All *.wit files are parsed and assumed to be part of the same package grouping. This is useful when a WIT package is split across multiple files.

Trait Implementations§

source§

impl Default for UnresolvedPackageGroup

source§

fn default() -> UnresolvedPackageGroup

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

§

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>,

§

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.