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
* [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
* [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]
#[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((
modport_ports_declaration_simple,
modport_ports_declaration_tf,
@ -31,34 +31,34 @@ pub(crate) fn modport_ports_declaration(s: Span) -> IResult<Span, ModportPortsDe
#[tracable_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, b) = modport_simple_ports_declaration(s)?;
Ok((
s,
ModportPortsDeclaraton::Simple(Box::new(ModportPortsDeclaratonSimple { nodes: (a, b) })),
ModportPortsDeclaration::Simple(Box::new(ModportPortsDeclarationSimple { nodes: (a, b) })),
))
}
#[tracable_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, b) = modport_tf_ports_declaration(s)?;
Ok((
s,
ModportPortsDeclaraton::Tf(Box::new(ModportPortsDeclaratonTf { nodes: (a, b) })),
ModportPortsDeclaration::Tf(Box::new(ModportPortsDeclarationTf { nodes: (a, b) })),
))
}
#[tracable_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, b) = modport_clocking_declaration(s)?;
Ok((
s,
ModportPortsDeclaraton::Clocking(Box::new(ModportPortsDeclaratonClocking {
ModportPortsDeclaration::Clocking(Box::new(ModportPortsDeclarationClocking {
nodes: (a, b),
})),
))

View File

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