Function package_declaration

Source
pub fn package_declaration<'a>(
    tokens: TokenStream,
) -> IResult<TokenStream, PackageDeclaration<'a>>
Expand description

解析包声明从给定的标记流中。

这个函数接受一个 TokenStream 并返回一个 PackageDeclaration 以及剩余的标记。

§参数

  • tokens - 一个 TokenStream,从中解析包声明。

§返回

包含剩余标记和 PackageDeclaration 的元组。

§示例

fn main() -> anyhow::Result<()> {
use java_lang::{
TokenStream,
package_declaration
};

let (_, tokens) = TokenStream::from_str(
    "package com.test;",
)?;
assert! (!tokens.is_empty());

let (tokens, package) = package_declaration(tokens)?;
assert_eq!(package.name, "com.test");

assert!(tokens.is_empty());
Ok(())
}

§错误

如果标记流不包含有效的包声明,这个函数将返回一个错误。