diff --git a/src/lib.rs b/src/lib.rs index 5f21a44..67c567f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,15 +1 @@ -pub mod attributes; -pub mod blocks; -pub mod comments; -pub mod concatenations; -pub mod continuous_assignments; -pub mod expressions; -pub mod identifiers; -pub mod lvalues; -pub mod numbers; -pub mod operators; -pub mod primaries; -pub mod proceduals; -pub mod strings; -pub mod subroutine_calls; -pub mod utils; +pub mod parser; diff --git a/src/parser.rs b/src/parser.rs new file mode 100644 index 0000000..b6867c5 --- /dev/null +++ b/src/parser.rs @@ -0,0 +1,8 @@ +pub mod behavioral_statements; +pub mod expressions; +pub mod general; +pub mod utils; +pub use behavioral_statements::*; +pub use expressions::*; +pub use general::*; +pub use utils::*; diff --git a/src/continuous_assignments.rs b/src/parser/behavioral_statements/continuous_assignment_and_net_alias_statements.rs similarity index 95% rename from src/continuous_assignments.rs rename to src/parser/behavioral_statements/continuous_assignment_and_net_alias_statements.rs index 9f164da..665ecf9 100644 --- a/src/continuous_assignments.rs +++ b/src/parser/behavioral_statements/continuous_assignment_and_net_alias_statements.rs @@ -1,7 +1,4 @@ -use crate::expressions::*; -use crate::lvalues::*; -use crate::proceduals::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::combinator::*; use nom::multi::*; diff --git a/src/parser/behavioral_statements/mod.rs b/src/parser/behavioral_statements/mod.rs new file mode 100644 index 0000000..6a516bb --- /dev/null +++ b/src/parser/behavioral_statements/mod.rs @@ -0,0 +1,6 @@ +pub mod continuous_assignment_and_net_alias_statements; +pub mod parallel_and_sequential_blocks; +pub mod procedual_blocks_and_assignments; +pub use continuous_assignment_and_net_alias_statements::*; +pub use parallel_and_sequential_blocks::*; +pub use procedual_blocks_and_assignments::*; diff --git a/src/blocks.rs b/src/parser/behavioral_statements/parallel_and_sequential_blocks.rs similarity index 98% rename from src/blocks.rs rename to src/parser/behavioral_statements/parallel_and_sequential_blocks.rs index b543416..4960fa0 100644 --- a/src/blocks.rs +++ b/src/parser/behavioral_statements/parallel_and_sequential_blocks.rs @@ -1,5 +1,4 @@ -use crate::identifiers::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::combinator::*; use nom::multi::*; diff --git a/src/proceduals.rs b/src/parser/behavioral_statements/procedual_blocks_and_assignments.rs similarity index 97% rename from src/proceduals.rs rename to src/parser/behavioral_statements/procedual_blocks_and_assignments.rs index 3fd446e..2a88423 100644 --- a/src/proceduals.rs +++ b/src/parser/behavioral_statements/procedual_blocks_and_assignments.rs @@ -1,10 +1,4 @@ -use crate::continuous_assignments::*; -use crate::expressions::*; -use crate::identifiers::*; -use crate::lvalues::*; -use crate::operators::*; -use crate::primaries::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::combinator::*; use nom::sequence::*; diff --git a/src/concatenations.rs b/src/parser/expressions/concatenations.rs similarity index 99% rename from src/concatenations.rs rename to src/parser/expressions/concatenations.rs index 17e7353..2b806c3 100644 --- a/src/concatenations.rs +++ b/src/parser/expressions/concatenations.rs @@ -1,5 +1,4 @@ -use crate::expressions::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::combinator::*; use nom::multi::*; diff --git a/src/lvalues.rs b/src/parser/expressions/expression_leftside_values.rs similarity index 98% rename from src/lvalues.rs rename to src/parser/expressions/expression_leftside_values.rs index 04c02bd..0059fff 100644 --- a/src/lvalues.rs +++ b/src/parser/expressions/expression_leftside_values.rs @@ -1,7 +1,4 @@ -use crate::concatenations::*; -use crate::identifiers::*; -use crate::primaries::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::combinator::*; use nom::multi::*; diff --git a/src/expressions.rs b/src/parser/expressions/expressions.rs similarity index 99% rename from src/expressions.rs rename to src/parser/expressions/expressions.rs index a3dd69e..1122cff 100644 --- a/src/expressions.rs +++ b/src/parser/expressions/expressions.rs @@ -1,10 +1,4 @@ -use crate::attributes::*; -use crate::identifiers::*; -use crate::lvalues::*; -use crate::operators::*; -use crate::primaries::*; -use crate::proceduals::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::combinator::*; use nom::multi::*; diff --git a/src/parser/expressions/mod.rs b/src/parser/expressions/mod.rs new file mode 100644 index 0000000..e84e492 --- /dev/null +++ b/src/parser/expressions/mod.rs @@ -0,0 +1,16 @@ +pub mod concatenations; +pub mod expression_leftside_values; +pub mod expressions; +pub mod numbers; +pub mod operators; +pub mod primaries; +pub mod strings; +pub mod subroutine_calls; +pub use concatenations::*; +pub use expression_leftside_values::*; +pub use expressions::*; +pub use numbers::*; +pub use operators::*; +pub use primaries::*; +pub use strings::*; +pub use subroutine_calls::*; diff --git a/src/numbers.rs b/src/parser/expressions/numbers.rs similarity index 99% rename from src/numbers.rs rename to src/parser/expressions/numbers.rs index 524c23f..5d4ac86 100644 --- a/src/numbers.rs +++ b/src/parser/expressions/numbers.rs @@ -1,4 +1,4 @@ -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::bytes::complete::*; use nom::character::complete::*; diff --git a/src/operators.rs b/src/parser/expressions/operators.rs similarity index 99% rename from src/operators.rs rename to src/parser/expressions/operators.rs index 444e4a9..4490c12 100644 --- a/src/operators.rs +++ b/src/parser/expressions/operators.rs @@ -1,4 +1,4 @@ -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::IResult; diff --git a/src/primaries.rs b/src/parser/expressions/primaries.rs similarity index 99% rename from src/primaries.rs rename to src/parser/expressions/primaries.rs index 0c32865..3955f6f 100644 --- a/src/primaries.rs +++ b/src/parser/expressions/primaries.rs @@ -1,10 +1,4 @@ -use crate::concatenations::*; -use crate::expressions::*; -use crate::identifiers::*; -use crate::numbers::*; -use crate::strings::*; -use crate::subroutine_calls::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::combinator::*; use nom::multi::*; diff --git a/src/strings.rs b/src/parser/expressions/strings.rs similarity index 98% rename from src/strings.rs rename to src/parser/expressions/strings.rs index b640f2d..7b69573 100644 --- a/src/strings.rs +++ b/src/parser/expressions/strings.rs @@ -1,4 +1,4 @@ -use crate::utils::*; +use crate::parser::*; use nom::bytes::complete::*; use nom::combinator::*; use nom::multi::*; diff --git a/src/subroutine_calls.rs b/src/parser/expressions/subroutine_calls.rs similarity index 98% rename from src/subroutine_calls.rs rename to src/parser/expressions/subroutine_calls.rs index 066c3bb..1193b41 100644 --- a/src/subroutine_calls.rs +++ b/src/parser/expressions/subroutine_calls.rs @@ -1,8 +1,4 @@ -use crate::attributes::*; -use crate::expressions::*; -use crate::identifiers::*; -use crate::primaries::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::combinator::*; use nom::multi::*; diff --git a/src/attributes.rs b/src/parser/general/attributes.rs similarity index 96% rename from src/attributes.rs rename to src/parser/general/attributes.rs index 401f95b..67c833e 100644 --- a/src/attributes.rs +++ b/src/parser/general/attributes.rs @@ -1,6 +1,4 @@ -use crate::expressions::*; -use crate::identifiers::*; -use crate::utils::*; +use crate::parser::*; use nom::combinator::*; use nom::multi::*; use nom::sequence::*; diff --git a/src/comments.rs b/src/parser/general/comments.rs similarity index 100% rename from src/comments.rs rename to src/parser/general/comments.rs diff --git a/src/identifiers.rs b/src/parser/general/identifiers.rs similarity index 99% rename from src/identifiers.rs rename to src/parser/general/identifiers.rs index d1b884b..1d96177 100644 --- a/src/identifiers.rs +++ b/src/parser/general/identifiers.rs @@ -1,6 +1,4 @@ -use crate::expressions::*; -use crate::primaries::*; -use crate::utils::*; +use crate::parser::*; use nom::branch::*; use nom::bytes::complete::*; use nom::combinator::*; diff --git a/src/parser/general/mod.rs b/src/parser/general/mod.rs new file mode 100644 index 0000000..7cad8f7 --- /dev/null +++ b/src/parser/general/mod.rs @@ -0,0 +1,6 @@ +pub mod attributes; +pub mod comments; +pub mod identifiers; +pub use attributes::*; +pub use comments::*; +pub use identifiers::*; diff --git a/src/utils.rs b/src/parser/utils.rs similarity index 99% rename from src/utils.rs rename to src/parser/utils.rs index 72da946..8ce4747 100644 --- a/src/utils.rs +++ b/src/parser/utils.rs @@ -1,4 +1,4 @@ -use crate::identifiers::*; +use crate::parser::*; use nom::bytes::complete::*; use nom::character::complete::*; use nom::IResult;