This commit is contained in:
dalance 2020-08-28 16:01:34 +09:00
parent 81a981a37e
commit 5514a70141
3 changed files with 17 additions and 15 deletions

View File

@ -2,6 +2,8 @@
## [Unreleased](https://github.com/dalance/sv-parser/compare/v0.7.0...Unreleased) - ReleaseDate ## [Unreleased](https://github.com/dalance/sv-parser/compare/v0.7.0...Unreleased) - ReleaseDate
* [Fixed] 'Declaraton' typo [#18](https://github.com/dalance/sv-parser/issues/18)
## [v0.7.0](https://github.com/dalance/sv-parser/compare/v0.6.5...v0.7.0) - 2020-04-10 ## [v0.7.0](https://github.com/dalance/sv-parser/compare/v0.6.5...v0.7.0) - 2020-04-10
* [Changed] make comment stripping optional [#6](https://github.com/dalance/sv-parser/pull/6) * [Changed] make comment stripping optional [#6](https://github.com/dalance/sv-parser/pull/6)

View File

@ -21,7 +21,7 @@ pub(crate) fn modport_item(s: Span) -> IResult<Span, ModportItem> {
#[tracable_parser] #[tracable_parser]
#[packrat_parser] #[packrat_parser]
pub(crate) fn modport_ports_declaration(s: Span) -> IResult<Span, ModportPortsDeclaraton> { pub(crate) fn modport_ports_declaration(s: Span) -> IResult<Span, ModportPortsDeclaration> {
alt(( alt((
modport_ports_declaration_simple, modport_ports_declaration_simple,
modport_ports_declaration_tf, modport_ports_declaration_tf,
@ -31,34 +31,34 @@ pub(crate) fn modport_ports_declaration(s: Span) -> IResult<Span, ModportPortsDe
#[tracable_parser] #[tracable_parser]
#[packrat_parser] #[packrat_parser]
pub(crate) fn modport_ports_declaration_simple(s: Span) -> IResult<Span, ModportPortsDeclaraton> { pub(crate) fn modport_ports_declaration_simple(s: Span) -> IResult<Span, ModportPortsDeclaration> {
let (s, a) = many0(attribute_instance)(s)?; let (s, a) = many0(attribute_instance)(s)?;
let (s, b) = modport_simple_ports_declaration(s)?; let (s, b) = modport_simple_ports_declaration(s)?;
Ok(( Ok((
s, s,
ModportPortsDeclaraton::Simple(Box::new(ModportPortsDeclaratonSimple { nodes: (a, b) })), ModportPortsDeclaration::Simple(Box::new(ModportPortsDeclarationSimple { nodes: (a, b) })),
)) ))
} }
#[tracable_parser] #[tracable_parser]
#[packrat_parser] #[packrat_parser]
pub(crate) fn modport_ports_declaration_tf(s: Span) -> IResult<Span, ModportPortsDeclaraton> { pub(crate) fn modport_ports_declaration_tf(s: Span) -> IResult<Span, ModportPortsDeclaration> {
let (s, a) = many0(attribute_instance)(s)?; let (s, a) = many0(attribute_instance)(s)?;
let (s, b) = modport_tf_ports_declaration(s)?; let (s, b) = modport_tf_ports_declaration(s)?;
Ok(( Ok((
s, s,
ModportPortsDeclaraton::Tf(Box::new(ModportPortsDeclaratonTf { nodes: (a, b) })), ModportPortsDeclaration::Tf(Box::new(ModportPortsDeclarationTf { nodes: (a, b) })),
)) ))
} }
#[tracable_parser] #[tracable_parser]
#[packrat_parser] #[packrat_parser]
pub(crate) fn modport_ports_declaration_clocking(s: Span) -> IResult<Span, ModportPortsDeclaraton> { pub(crate) fn modport_ports_declaration_clocking(s: Span) -> IResult<Span, ModportPortsDeclaration> {
let (s, a) = many0(attribute_instance)(s)?; let (s, a) = many0(attribute_instance)(s)?;
let (s, b) = modport_clocking_declaration(s)?; let (s, b) = modport_clocking_declaration(s)?;
Ok(( Ok((
s, s,
ModportPortsDeclaraton::Clocking(Box::new(ModportPortsDeclaratonClocking { ModportPortsDeclaration::Clocking(Box::new(ModportPortsDeclarationClocking {
nodes: (a, b), nodes: (a, b),
})), })),
)) ))

View File

@ -11,29 +11,29 @@ pub struct ModportDeclaration {
pub struct ModportItem { pub struct ModportItem {
pub nodes: ( pub nodes: (
ModportIdentifier, ModportIdentifier,
Paren<List<Symbol, ModportPortsDeclaraton>>, Paren<List<Symbol, ModportPortsDeclaration>>,
), ),
} }
#[derive(Clone, Debug, PartialEq, Node)] #[derive(Clone, Debug, PartialEq, Node)]
pub enum ModportPortsDeclaraton { pub enum ModportPortsDeclaration {
Simple(Box<ModportPortsDeclaratonSimple>), Simple(Box<ModportPortsDeclarationSimple>),
Tf(Box<ModportPortsDeclaratonTf>), Tf(Box<ModportPortsDeclarationTf>),
Clocking(Box<ModportPortsDeclaratonClocking>), Clocking(Box<ModportPortsDeclarationClocking>),
} }
#[derive(Clone, Debug, PartialEq, Node)] #[derive(Clone, Debug, PartialEq, Node)]
pub struct ModportPortsDeclaratonSimple { pub struct ModportPortsDeclarationSimple {
pub nodes: (Vec<AttributeInstance>, ModportSimplePortsDeclaration), pub nodes: (Vec<AttributeInstance>, ModportSimplePortsDeclaration),
} }
#[derive(Clone, Debug, PartialEq, Node)] #[derive(Clone, Debug, PartialEq, Node)]
pub struct ModportPortsDeclaratonTf { pub struct ModportPortsDeclarationTf {
pub nodes: (Vec<AttributeInstance>, ModportTfPortsDeclaration), pub nodes: (Vec<AttributeInstance>, ModportTfPortsDeclaration),
} }
#[derive(Clone, Debug, PartialEq, Node)] #[derive(Clone, Debug, PartialEq, Node)]
pub struct ModportPortsDeclaratonClocking { pub struct ModportPortsDeclarationClocking {
pub nodes: (Vec<AttributeInstance>, ModportClockingDeclaration), pub nodes: (Vec<AttributeInstance>, ModportClockingDeclaration),
} }