pub struct ModuleImportHead<'a> {
pub kind: ModuleImportKind,
pub token: &'a str,
pub token_start: usize,
pub token_end: usize,
pub import_list: Option<ImportListForm>,
/* private fields */
}Expand description
Parsed leading import token from a use/require line.
Fields§
§kind: ModuleImportKindParsed statement kind.
token: &'a strFirst token after use or require (quotes stripped for file-path forms).
token_start: usizeInclusive byte start offset of token in the full line.
token_end: usizeExclusive byte end offset of token in the full line.
import_list: Option<ImportListForm>For use statements, how the import list is spelled.
Implementations§
Source§impl<'a> ModuleImportHead<'a>
impl<'a> ModuleImportHead<'a>
Sourcepub fn require_form(&self) -> Option<RequireForm>
pub fn require_form(&self) -> Option<RequireForm>
Returns the RequireForm for require statements, or None for use forms.
Sourcepub fn token_as_module_name(&self) -> String
pub fn token_as_module_name(&self) -> String
Returns the module name for resolution purposes.
For require "Foo/Bar.pm" (FilePath form with .pm extension), converts
the file-path token to canonical module-name format (Foo::Bar).
All other forms (.pl, extensionless, bare ModuleName, use statements)
return the token unchanged. Does NOT mutate token, token_start, or
token_end — the original offsets and raw token remain valid.
Trait Implementations§
Source§impl<'a> Clone for ModuleImportHead<'a>
impl<'a> Clone for ModuleImportHead<'a>
Source§fn clone(&self) -> ModuleImportHead<'a>
fn clone(&self) -> ModuleImportHead<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl<'a> Copy for ModuleImportHead<'a>
Source§impl<'a> Debug for ModuleImportHead<'a>
impl<'a> Debug for ModuleImportHead<'a>
impl<'a> Eq for ModuleImportHead<'a>
Source§impl<'a> PartialEq for ModuleImportHead<'a>
impl<'a> PartialEq for ModuleImportHead<'a>
Source§fn eq(&self, other: &ModuleImportHead<'a>) -> bool
fn eq(&self, other: &ModuleImportHead<'a>) -> bool
self and other values to be equal, and is used by ==.