Skip to main content

Crate use_go_package

Crate use_go_package 

Source
Expand description

§use-go-package

Go package metadata primitives for RustUse.

§Experimental

use-go-package is experimental while use-go remains below 0.3.0.

§Example

use use_go_package::{GoPackageName, GoPackagePath, GoPackageVisibility};

let name = GoPackageName::new("http")?;
let path = GoPackagePath::new("net/http")?;

assert_eq!(name.as_str(), "http");
assert_eq!(path.as_str(), "net/http");
assert_eq!(GoPackageVisibility::Public.to_string(), "public");

§Scope

  • Go package names and slash-separated package paths.
  • Package visibility, layout, and file-kind labels.
  • Metadata-only package descriptors.

§Non-goals

  • Parsing Go source files.
  • Resolving packages or imports.
  • Enforcing all Go compiler package-name rules.

§License

Licensed under either Apache-2.0 or MIT.

Structs§

GoPackageDocName
Go package documentation name metadata.
GoPackageName
Validated Go package name metadata.
GoPackagePath
Validated slash-separated Go package path metadata.

Enums§

GoFileKind
Go file kind metadata.
GoPackageError
Error returned by Go package metadata constructors.
GoPackageLayout
Go package layout metadata.
GoPackageVisibility
Go package visibility metadata.