pub struct PackageJson { /* private fields */ }Expand description
Partial practical package.json metadata.
Implementations§
Source§impl PackageJson
impl PackageJson
Sourcepub fn new() -> Self
pub fn new() -> Self
Creates empty package metadata.
Examples found in repository?
examples/basic_usage.rs (line 7)
6fn main() -> Result<(), use_package_json::PackageJsonTextError> {
7 let manifest = PackageJson::new()
8 .with_name(PackageName::new("@rustuse/example")?)
9 .with_version(PackageVersion::new("0.1.0")?)
10 .with_package_type(PackageType::Module)
11 .with_script(
12 PackageScriptName::new("test")?,
13 PackageScript::new("vitest")?,
14 )
15 .with_dependency(
16 DependencyKind::Dependencies,
17 PackageName::new("react")?,
18 PackageVersion::new("^18")?,
19 );
20
21 assert!(manifest.name().is_some_and(PackageName::is_scoped));
22 Ok(())
23}Sourcepub fn with_name(self, name: PackageName) -> Self
pub fn with_name(self, name: PackageName) -> Self
Sets the package name.
Examples found in repository?
examples/basic_usage.rs (line 8)
6fn main() -> Result<(), use_package_json::PackageJsonTextError> {
7 let manifest = PackageJson::new()
8 .with_name(PackageName::new("@rustuse/example")?)
9 .with_version(PackageVersion::new("0.1.0")?)
10 .with_package_type(PackageType::Module)
11 .with_script(
12 PackageScriptName::new("test")?,
13 PackageScript::new("vitest")?,
14 )
15 .with_dependency(
16 DependencyKind::Dependencies,
17 PackageName::new("react")?,
18 PackageVersion::new("^18")?,
19 );
20
21 assert!(manifest.name().is_some_and(PackageName::is_scoped));
22 Ok(())
23}Sourcepub fn with_version(self, version: PackageVersion) -> Self
pub fn with_version(self, version: PackageVersion) -> Self
Sets the package version.
Examples found in repository?
examples/basic_usage.rs (line 9)
6fn main() -> Result<(), use_package_json::PackageJsonTextError> {
7 let manifest = PackageJson::new()
8 .with_name(PackageName::new("@rustuse/example")?)
9 .with_version(PackageVersion::new("0.1.0")?)
10 .with_package_type(PackageType::Module)
11 .with_script(
12 PackageScriptName::new("test")?,
13 PackageScript::new("vitest")?,
14 )
15 .with_dependency(
16 DependencyKind::Dependencies,
17 PackageName::new("react")?,
18 PackageVersion::new("^18")?,
19 );
20
21 assert!(manifest.name().is_some_and(PackageName::is_scoped));
22 Ok(())
23}Sourcepub const fn with_package_type(self, package_type: PackageType) -> Self
pub const fn with_package_type(self, package_type: PackageType) -> Self
Sets the package type.
Examples found in repository?
examples/basic_usage.rs (line 10)
6fn main() -> Result<(), use_package_json::PackageJsonTextError> {
7 let manifest = PackageJson::new()
8 .with_name(PackageName::new("@rustuse/example")?)
9 .with_version(PackageVersion::new("0.1.0")?)
10 .with_package_type(PackageType::Module)
11 .with_script(
12 PackageScriptName::new("test")?,
13 PackageScript::new("vitest")?,
14 )
15 .with_dependency(
16 DependencyKind::Dependencies,
17 PackageName::new("react")?,
18 PackageVersion::new("^18")?,
19 );
20
21 assert!(manifest.name().is_some_and(PackageName::is_scoped));
22 Ok(())
23}Sourcepub fn with_script(self, name: PackageScriptName, script: PackageScript) -> Self
pub fn with_script(self, name: PackageScriptName, script: PackageScript) -> Self
Adds a script entry.
Examples found in repository?
examples/basic_usage.rs (lines 11-14)
6fn main() -> Result<(), use_package_json::PackageJsonTextError> {
7 let manifest = PackageJson::new()
8 .with_name(PackageName::new("@rustuse/example")?)
9 .with_version(PackageVersion::new("0.1.0")?)
10 .with_package_type(PackageType::Module)
11 .with_script(
12 PackageScriptName::new("test")?,
13 PackageScript::new("vitest")?,
14 )
15 .with_dependency(
16 DependencyKind::Dependencies,
17 PackageName::new("react")?,
18 PackageVersion::new("^18")?,
19 );
20
21 assert!(manifest.name().is_some_and(PackageName::is_scoped));
22 Ok(())
23}Sourcepub fn with_dependency(
self,
kind: DependencyKind,
name: PackageName,
version: PackageVersion,
) -> Self
pub fn with_dependency( self, kind: DependencyKind, name: PackageName, version: PackageVersion, ) -> Self
Adds a dependency entry under a dependency kind.
Examples found in repository?
examples/basic_usage.rs (lines 15-19)
6fn main() -> Result<(), use_package_json::PackageJsonTextError> {
7 let manifest = PackageJson::new()
8 .with_name(PackageName::new("@rustuse/example")?)
9 .with_version(PackageVersion::new("0.1.0")?)
10 .with_package_type(PackageType::Module)
11 .with_script(
12 PackageScriptName::new("test")?,
13 PackageScript::new("vitest")?,
14 )
15 .with_dependency(
16 DependencyKind::Dependencies,
17 PackageName::new("react")?,
18 PackageVersion::new("^18")?,
19 );
20
21 assert!(manifest.name().is_some_and(PackageName::is_scoped));
22 Ok(())
23}Sourcepub const fn name(&self) -> Option<&PackageName>
pub const fn name(&self) -> Option<&PackageName>
Returns the optional package name.
Examples found in repository?
examples/basic_usage.rs (line 21)
6fn main() -> Result<(), use_package_json::PackageJsonTextError> {
7 let manifest = PackageJson::new()
8 .with_name(PackageName::new("@rustuse/example")?)
9 .with_version(PackageVersion::new("0.1.0")?)
10 .with_package_type(PackageType::Module)
11 .with_script(
12 PackageScriptName::new("test")?,
13 PackageScript::new("vitest")?,
14 )
15 .with_dependency(
16 DependencyKind::Dependencies,
17 PackageName::new("react")?,
18 PackageVersion::new("^18")?,
19 );
20
21 assert!(manifest.name().is_some_and(PackageName::is_scoped));
22 Ok(())
23}Sourcepub const fn version(&self) -> Option<&PackageVersion>
pub const fn version(&self) -> Option<&PackageVersion>
Returns the optional package version.
Sourcepub const fn package_type(&self) -> Option<PackageType>
pub const fn package_type(&self) -> Option<PackageType>
Returns the optional package type.
Sourcepub const fn scripts(&self) -> &BTreeMap<PackageScriptName, PackageScript>
pub const fn scripts(&self) -> &BTreeMap<PackageScriptName, PackageScript>
Returns script entries.
Sourcepub const fn dependencies(&self) -> &BTreeMap<DependencyKind, DependencyMap>
pub const fn dependencies(&self) -> &BTreeMap<DependencyKind, DependencyMap>
Returns dependency entries grouped by dependency kind.
Trait Implementations§
Source§impl Clone for PackageJson
impl Clone for PackageJson
Source§fn clone(&self) -> PackageJson
fn clone(&self) -> PackageJson
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PackageJson
impl Debug for PackageJson
Source§impl Default for PackageJson
impl Default for PackageJson
Source§fn default() -> PackageJson
fn default() -> PackageJson
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for PackageJson
impl<'de> Deserialize<'de> for PackageJson
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for PackageJson
impl PartialEq for PackageJson
Source§fn eq(&self, other: &PackageJson) -> bool
fn eq(&self, other: &PackageJson) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for PackageJson
impl Serialize for PackageJson
impl Eq for PackageJson
impl StructuralPartialEq for PackageJson
Auto Trait Implementations§
impl Freeze for PackageJson
impl RefUnwindSafe for PackageJson
impl Send for PackageJson
impl Sync for PackageJson
impl Unpin for PackageJson
impl UnsafeUnpin for PackageJson
impl UnwindSafe for PackageJson
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more