From bab78400086018b68c90f876a9aec4c38d300a17 Mon Sep 17 00:00:00 2001 From: Davirain Date: Mon, 23 Oct 2023 17:32:31 +0800 Subject: [PATCH] Refactor expression module, rename files and imports for consistency and clarity. --- .../expression/{array_literal.rs => array.rs} | 0 .../{call_expression.rs => call.rs} | 0 .../{function_literal.rs => function.rs} | 0 .../expression/{hash_literal.rs => hash.rs} | 0 src/ast/expression/if_expression.rs | 2 +- .../{index_expression.rs => index.rs} | 0 .../{infix_expression.rs => infix.rs} | 2 +- .../{integer_literal.rs => integer.rs} | 0 src/ast/expression/mod.rs | 36 +++++++++---------- .../{prefix_expression.rs => prefix.rs} | 2 +- .../{string_literal.rs => string.rs} | 0 src/ast/statement/expression.rs | 2 +- src/ast/statement/let_statement.rs | 2 +- src/ast/statement/return_statement.rs | 2 +- src/evaluator/mod.rs | 2 +- src/parser/mod.rs | 18 +++++----- src/parser/tests.rs | 18 +++++----- 17 files changed, 43 insertions(+), 43 deletions(-) rename src/ast/expression/{array_literal.rs => array.rs} (100%) rename src/ast/expression/{call_expression.rs => call.rs} (100%) rename src/ast/expression/{function_literal.rs => function.rs} (100%) rename src/ast/expression/{hash_literal.rs => hash.rs} (100%) rename src/ast/expression/{index_expression.rs => index.rs} (100%) rename src/ast/expression/{infix_expression.rs => infix.rs} (97%) rename src/ast/expression/{integer_literal.rs => integer.rs} (100%) rename src/ast/expression/{prefix_expression.rs => prefix.rs} (96%) rename src/ast/expression/{string_literal.rs => string.rs} (100%) diff --git a/src/ast/expression/array_literal.rs b/src/ast/expression/array.rs similarity index 100% rename from src/ast/expression/array_literal.rs rename to src/ast/expression/array.rs diff --git a/src/ast/expression/call_expression.rs b/src/ast/expression/call.rs similarity index 100% rename from src/ast/expression/call_expression.rs rename to src/ast/expression/call.rs diff --git a/src/ast/expression/function_literal.rs b/src/ast/expression/function.rs similarity index 100% rename from src/ast/expression/function_literal.rs rename to src/ast/expression/function.rs diff --git a/src/ast/expression/hash_literal.rs b/src/ast/expression/hash.rs similarity index 100% rename from src/ast/expression/hash_literal.rs rename to src/ast/expression/hash.rs diff --git a/src/ast/expression/if_expression.rs b/src/ast/expression/if_expression.rs index edc22a7..0963553 100644 --- a/src/ast/expression/if_expression.rs +++ b/src/ast/expression/if_expression.rs @@ -1,4 +1,4 @@ -use crate::ast::expression::integer_literal::IntegerLiteral; +use crate::ast::expression::integer::IntegerLiteral; use crate::ast::expression::Expression; use crate::ast::statement::block::BlockStatement; use crate::ast::NodeInterface; diff --git a/src/ast/expression/index_expression.rs b/src/ast/expression/index.rs similarity index 100% rename from src/ast/expression/index_expression.rs rename to src/ast/expression/index.rs diff --git a/src/ast/expression/infix_expression.rs b/src/ast/expression/infix.rs similarity index 97% rename from src/ast/expression/infix_expression.rs rename to src/ast/expression/infix.rs index 34c46a6..b4bae4c 100644 --- a/src/ast/expression/infix_expression.rs +++ b/src/ast/expression/infix.rs @@ -1,4 +1,4 @@ -use crate::ast::expression::integer_literal::IntegerLiteral; +use crate::ast::expression::integer::IntegerLiteral; use crate::ast::expression::Expression; use crate::ast::statement::expression::ExpressionStatement; use crate::ast::NodeInterface; diff --git a/src/ast/expression/integer_literal.rs b/src/ast/expression/integer.rs similarity index 100% rename from src/ast/expression/integer_literal.rs rename to src/ast/expression/integer.rs diff --git a/src/ast/expression/mod.rs b/src/ast/expression/mod.rs index ef8303f..f4414e8 100644 --- a/src/ast/expression/mod.rs +++ b/src/ast/expression/mod.rs @@ -1,29 +1,29 @@ -use crate::ast::expression::array_literal::ArrayLiteral; +use crate::ast::expression::array::ArrayLiteral; use crate::ast::expression::boolean::Boolean; -use crate::ast::expression::call_expression::Call; -use crate::ast::expression::function_literal::FunctionLiteral; -use crate::ast::expression::hash_literal::HashLiteral; +use crate::ast::expression::call::Call; +use crate::ast::expression::function::FunctionLiteral; +use crate::ast::expression::hash::HashLiteral; use crate::ast::expression::if_expression::If; -use crate::ast::expression::index_expression::Index; -use crate::ast::expression::infix_expression::Infix; -use crate::ast::expression::integer_literal::IntegerLiteral; -use crate::ast::expression::prefix_expression::Prefix; -use crate::ast::expression::string_literal::StringLiteral; +use crate::ast::expression::index::Index; +use crate::ast::expression::infix::Infix; +use crate::ast::expression::integer::IntegerLiteral; +use crate::ast::expression::prefix::Prefix; +use crate::ast::expression::string::StringLiteral; use crate::ast::Identifier; use crate::ast::NodeInterface; use std::fmt::{Display, Formatter}; -pub mod array_literal; +pub mod array; pub mod boolean; -pub mod call_expression; -pub mod function_literal; -pub mod hash_literal; +pub mod call; +pub mod function; +pub mod hash; pub mod if_expression; -pub mod index_expression; -pub mod infix_expression; -pub mod integer_literal; -pub mod prefix_expression; -pub mod string_literal; +pub mod index; +pub mod infix; +pub mod integer; +pub mod prefix; +pub mod string; #[derive(Debug, Clone, Hash, Eq, PartialEq, Ord, PartialOrd)] pub enum Expression { diff --git a/src/ast/expression/prefix_expression.rs b/src/ast/expression/prefix.rs similarity index 96% rename from src/ast/expression/prefix_expression.rs rename to src/ast/expression/prefix.rs index 04fc61e..7ecf91d 100644 --- a/src/ast/expression/prefix_expression.rs +++ b/src/ast/expression/prefix.rs @@ -1,4 +1,4 @@ -use crate::ast::expression::integer_literal::IntegerLiteral; +use crate::ast::expression::integer::IntegerLiteral; use crate::ast::expression::Expression; use crate::ast::statement::expression::ExpressionStatement; use crate::ast::NodeInterface; diff --git a/src/ast/expression/string_literal.rs b/src/ast/expression/string.rs similarity index 100% rename from src/ast/expression/string_literal.rs rename to src/ast/expression/string.rs diff --git a/src/ast/statement/expression.rs b/src/ast/statement/expression.rs index c9c92de..162bfd0 100644 --- a/src/ast/statement/expression.rs +++ b/src/ast/statement/expression.rs @@ -1,4 +1,4 @@ -use crate::ast::expression::integer_literal::IntegerLiteral; +use crate::ast::expression::integer::IntegerLiteral; use crate::ast::expression::Expression; use crate::ast::statement::Statement; use crate::ast::NodeInterface; diff --git a/src/ast/statement/let_statement.rs b/src/ast/statement/let_statement.rs index b4211d2..cb592c2 100644 --- a/src/ast/statement/let_statement.rs +++ b/src/ast/statement/let_statement.rs @@ -1,4 +1,4 @@ -use crate::ast::expression::integer_literal::IntegerLiteral; +use crate::ast::expression::integer::IntegerLiteral; use crate::ast::expression::Expression; use crate::ast::statement::Statement; use crate::ast::{Identifier, NodeInterface}; diff --git a/src/ast/statement/return_statement.rs b/src/ast/statement/return_statement.rs index 309eb7a..aa59951 100644 --- a/src/ast/statement/return_statement.rs +++ b/src/ast/statement/return_statement.rs @@ -1,4 +1,4 @@ -use crate::ast::expression::integer_literal::IntegerLiteral; +use crate::ast::expression::integer::IntegerLiteral; use crate::ast::expression::Expression; use crate::ast::statement::Statement; use crate::ast::NodeInterface; diff --git a/src/evaluator/mod.rs b/src/evaluator/mod.rs index e459b1b..2ff15a7 100644 --- a/src/evaluator/mod.rs +++ b/src/evaluator/mod.rs @@ -1,4 +1,4 @@ -use crate::ast::expression::hash_literal::HashLiteral; +use crate::ast::expression::hash::HashLiteral; use crate::ast::expression::if_expression::If; use crate::ast::expression::Expression; use crate::ast::statement::block::BlockStatement; diff --git a/src/parser/mod.rs b/src/parser/mod.rs index 8d15c7d..92bd8bd 100644 --- a/src/parser/mod.rs +++ b/src/parser/mod.rs @@ -3,17 +3,17 @@ pub mod parser_tracing; #[cfg(test)] mod tests; -use crate::ast::expression::array_literal::ArrayLiteral; +use crate::ast::expression::array::ArrayLiteral; use crate::ast::expression::boolean::Boolean; -use crate::ast::expression::call_expression::Call; -use crate::ast::expression::function_literal::FunctionLiteral; -use crate::ast::expression::hash_literal::HashLiteral; +use crate::ast::expression::call::Call; +use crate::ast::expression::function::FunctionLiteral; +use crate::ast::expression::hash::HashLiteral; use crate::ast::expression::if_expression::If; -use crate::ast::expression::index_expression::Index; -use crate::ast::expression::infix_expression::Infix; -use crate::ast::expression::integer_literal::IntegerLiteral; -use crate::ast::expression::prefix_expression::Prefix; -use crate::ast::expression::string_literal::StringLiteral; +use crate::ast::expression::index::Index; +use crate::ast::expression::infix::Infix; +use crate::ast::expression::integer::IntegerLiteral; +use crate::ast::expression::prefix::Prefix; +use crate::ast::expression::string::StringLiteral; use crate::ast::expression::Expression; use crate::ast::statement::block::BlockStatement; use crate::ast::statement::expression::ExpressionStatement; diff --git a/src/parser/tests.rs b/src/parser/tests.rs index 5689235..6a2fc2d 100644 --- a/src/parser/tests.rs +++ b/src/parser/tests.rs @@ -1,14 +1,14 @@ -use crate::ast::expression::array_literal::ArrayLiteral; +use crate::ast::expression::array::ArrayLiteral; use crate::ast::expression::boolean::Boolean; -use crate::ast::expression::call_expression::Call; -use crate::ast::expression::function_literal::FunctionLiteral; -use crate::ast::expression::hash_literal::HashLiteral; +use crate::ast::expression::call::Call; +use crate::ast::expression::function::FunctionLiteral; +use crate::ast::expression::hash::HashLiteral; use crate::ast::expression::if_expression::If; -use crate::ast::expression::index_expression::Index; -use crate::ast::expression::infix_expression::Infix; -use crate::ast::expression::integer_literal::IntegerLiteral; -use crate::ast::expression::prefix_expression::Prefix; -use crate::ast::expression::string_literal::StringLiteral; +use crate::ast::expression::index::Index; +use crate::ast::expression::infix::Infix; +use crate::ast::expression::integer::IntegerLiteral; +use crate::ast::expression::prefix::Prefix; +use crate::ast::expression::string::StringLiteral; use crate::ast::expression::Expression; use crate::ast::statement::expression::ExpressionStatement; use crate::ast::statement::let_statement::LetStatement;