scarf-parser 0.1.0

A helper crate of scarf for parsing a SystemVerilog source file
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// =======================================================================
// task_declarations.rs
// =======================================================================
// Parsing for 1800-2023 A.2.7

use crate::*;
use chumsky::prelude::*;
use scarf_syntax::*;

pub fn final_specifier_parser<'a, I>() -> impl Parser<'a, I, FinalSpecifier<'a>, ParserError<'a>>
where
    I: ValueInput<'a, Token = Token<'a>, Span = ParserSpan>,
{
    token(Token::Colon)
        .then(token(Token::Final))
        .map(|(a, b)| FinalSpecifier(a, b))
}