Expand description
§use-go-identifier
ASCII-safe Go identifier primitives for RustUse.
§Experimental
use-go-identifier is experimental while use-go remains below 0.3.0.
§Example
use use_go_identifier::{GoExportedIdentifier, GoIdentifier, is_valid_ascii_go_identifier};
let identifier = GoIdentifier::new("ServeHTTP")?;
let exported = GoExportedIdentifier::new("ServeHTTP")?;
assert_eq!(identifier.as_str(), "ServeHTTP");
assert_eq!(exported.as_str(), "ServeHTTP");
assert!(is_valid_ascii_go_identifier("handler_1"));§Scope
- Ordinary ASCII-safe Go identifier validation.
- Exported identifiers that start with an uppercase ASCII letter.
- Unexported identifiers that start with a lowercase ASCII letter or underscore.
§Non-goals
- Complete Unicode Go identifier validation.
- Keyword or predeclared identifier checks.
- Go source-code parsing.
Unicode-complete Go identifier validation is future work.
§License
Licensed under either Apache-2.0 or MIT.
Structs§
- GoExported
Identifier - Validated exported ASCII-safe Go identifier.
- GoIdentifier
- Validated ASCII-safe Go identifier.
- GoUnexported
Identifier - Validated unexported ASCII-safe Go identifier.
Enums§
- GoIdentifier
Error - Error returned when an ASCII Go identifier is invalid.
Functions§
- is_
ascii_ go_ identifier_ continue - Returns whether
characteris accepted after the first identifier character. - is_
ascii_ go_ identifier_ start - Returns whether
characteris accepted as an ASCII Go identifier start. - is_
exported_ go_ identifier - Returns whether
valueis an exported ASCII-safe Go identifier. - is_
unexported_ go_ identifier - Returns whether
valueis an unexported ASCII-safe Go identifier. - is_
valid_ ascii_ go_ identifier - Returns whether
valueis an ASCII-safe Go identifier.