Skip to content

Commit

Permalink
fix some codestyle
Browse files Browse the repository at this point in the history
  • Loading branch information
xring committed Apr 5, 2024
1 parent 7d229ec commit f48b9e9
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 98 deletions.
10 changes: 0 additions & 10 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,16 +45,6 @@ jobs:
- uses: actions/checkout@master
- run: cargo doc --document-private-items --no-deps --workspace --all-features

compile-no-std:
runs-on: ubuntu-latest
steps:
- name: Set up Rust
uses: hecrj/setup-rust-action@v1
with:
targets: 'thumbv6m-none-eabi'
- uses: actions/checkout@master
- run: cargo check --no-default-features --target thumbv6m-none-eabi

test:
strategy:
matrix:
Expand Down
26 changes: 9 additions & 17 deletions src/base/column.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
use std::cmp::Ordering;
use std::fmt::{self, Display};
use std::ptr::null;
use std::str;
use std::str::FromStr;

Expand Down Expand Up @@ -145,7 +146,7 @@ impl Display for FunctionArguments {
}
}

impl<'a> From<Vec<FunctionArgument>> for FunctionArguments {
impl From<Vec<FunctionArgument>> for FunctionArguments {
fn from(args: Vec<FunctionArgument>) -> FunctionArguments {
FunctionArguments { arguments: args }
}
Expand All @@ -164,7 +165,7 @@ impl FunctionArgument {
map(CaseWhenExpression::parse, |cw| {
FunctionArgument::Conditional(cw)
}),
map(Column::without_alias, |c| FunctionArgument::Column(c)),
map(Column::without_alias, FunctionArgument::Column),
))(i)
}

Expand Down Expand Up @@ -229,10 +230,7 @@ impl Column {
map(table_parser, |tup| Column {
name: tup.1.to_string(),
alias: None,
table: match tup.0 {
None => None,
Some(t) => Some(t.to_string()),
},
table: tup.0.map(|t| t.to_string()),
function: None,
}),
))(i)
Expand All @@ -246,10 +244,7 @@ impl Column {
None => format!("{}", tup.0),
Some(a) => String::from(a),
},
alias: match tup.1 {
None => None,
Some(a) => Some(String::from(a)),
},
alias: tup.1.map(String::from),
table: None,
function: Some(Box::new(tup.0)),
}
Expand All @@ -266,10 +261,7 @@ impl Column {
None => None,
Some(a) => Some(String::from(a)),
},
table: match tup.0 {
None => None,
Some(t) => Some(t.to_string()),
},
table: tup.2.map(String::from),
function: None,
},
);
Expand Down Expand Up @@ -300,7 +292,7 @@ impl fmt::Display for Column {

impl From<String> for Column {
fn from(value: String) -> Self {
match value.find(".") {
match value.find('.') {
None => Column {
name: value,
alias: None,
Expand Down Expand Up @@ -547,7 +539,7 @@ impl Display for ColumnPosition {
ColumnPosition::After(column) => {
let column_name = match &column.table {
Some(table) => format!("{}.{}", table, &column.name),
None => format!("{}", &column.name),
None => (&column.name).to_string(),

Check failure on line 542 in src/base/column.rs

View workflow job for this annotation

GitHub Actions / lint

this expression borrows a value the compiler would automatically borrow
};
Ok(write!(f, "AFTER {column_name}")?)
}
Expand Down Expand Up @@ -594,7 +586,7 @@ impl ColumnSpecification {
ColumnSpecification {
column,
sql_type,
constraints: constraints.into_iter().filter_map(|m| m).collect(),
constraints: constraints.into_iter().flatten().collect(),
comment,
position,
},
Expand Down
2 changes: 1 addition & 1 deletion src/das/set_statement.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ use std::{fmt, str};

use nom::bytes::complete::tag_no_case;
use nom::character::complete::{multispace0, multispace1};
use nom::IResult;
use nom::sequence::tuple;
use nom::IResult;

use base::error::ParseSQLError;
use base::Literal;
Expand Down
101 changes: 31 additions & 70 deletions src/parser.rs
Original file line number Diff line number Diff line change
Expand Up @@ -39,72 +39,40 @@ impl Parser {
let input = input.trim();

let dds_parser = alt((
map(AlterDatabaseStatement::parse, |parsed| {
Statement::AlterDatabase(parsed)
}),
map(AlterTableStatement::parse, |parsed| {
Statement::AlterTable(parsed)
}),
map(CreateIndexStatement::parse, |parsed| {
Statement::CreateIndex(parsed)
}),
map(CreateTableStatement::parse, |parsed| {
Statement::CreateTable(parsed)
}),
map(DropDatabaseStatement::parse, |parsed| {
Statement::DropDatabase(parsed)
}),
map(DropEventStatement::parse, |parsed| {
Statement::DropEvent(parsed)
}),
map(DropFunctionStatement::parse, |parsed| {
Statement::DropFunction(parsed)
}),
map(DropIndexStatement::parse, |parsed| {
Statement::DropIndex(parsed)
}),
map(DropLogfileGroupStatement::parse, |parsed| {
Statement::DropLogfileGroup(parsed)
}),
map(DropProcedureStatement::parse, |parsed| {
Statement::DropProcedure(parsed)
}),
map(DropServerStatement::parse, |parsed| {
Statement::DropServer(parsed)
}),
map(DropSpatialReferenceSystemStatement::parse, |parsed| {
Statement::DropSpatialReferenceSystem(parsed)
}),
map(DropTableStatement::parse, |parsed| {
Statement::DropTable(parsed)
}),
map(DropTablespaceStatement::parse, |parsed| {
Statement::DropTableSpace(parsed)
}),
map(DropTriggerStatement::parse, |parsed| {
Statement::DropTrigger(parsed)
}),
map(DropViewStatement::parse, |parsed| {
Statement::DropView(parsed)
}),
map(RenameTableStatement::parse, |parsed| {
Statement::RenameTable(parsed)
}),
map(TruncateTableStatement::parse, |parsed| {
Statement::TruncateTable(parsed)
}),
map(AlterDatabaseStatement::parse, Statement::AlterDatabase),
map(AlterTableStatement::parse, Statement::AlterTable),
map(CreateIndexStatement::parse, Statement::CreateIndex),
map(CreateTableStatement::parse, Statement::CreateTable),
map(DropDatabaseStatement::parse, Statement::DropDatabase),
map(DropEventStatement::parse, Statement::DropEvent),
map(DropFunctionStatement::parse, Statement::DropFunction),
map(DropIndexStatement::parse, Statement::DropIndex),
map(
DropLogfileGroupStatement::parse,
Statement::DropLogfileGroup,
),
map(DropProcedureStatement::parse, Statement::DropProcedure),
map(DropServerStatement::parse, Statement::DropServer),
map(
DropSpatialReferenceSystemStatement::parse,
Statement::DropSpatialReferenceSystem,
),
map(DropTableStatement::parse, Statement::DropTable),
map(DropTablespaceStatement::parse, Statement::DropTableSpace),
map(DropTriggerStatement::parse, Statement::DropTrigger),
map(DropViewStatement::parse, Statement::DropView),
map(RenameTableStatement::parse, Statement::RenameTable),
map(TruncateTableStatement::parse, Statement::TruncateTable),
));

let das_parser = alt((map(SetStatement::parse, |parsed| Statement::Set(parsed)),));
let das_parser = alt((map(SetStatement::parse, Statement::Set),));

let dms_parser = alt((
map(SelectStatement::parse, |parsed| Statement::Select(parsed)),
map(CompoundSelectStatement::parse, |parsed| {
Statement::CompoundSelect(parsed)
}),
map(InsertStatement::parse, |parsed| Statement::Insert(parsed)),
map(DeleteStatement::parse, |parsed| Statement::Delete(parsed)),
map(UpdateStatement::parse, |parsed| Statement::Update(parsed)),
map(SelectStatement::parse, Statement::Select),
map(CompoundSelectStatement::parse, Statement::CompoundSelect),
map(InsertStatement::parse, Statement::Insert),
map(DeleteStatement::parse, Statement::Delete),
map(UpdateStatement::parse, Statement::Update),
));

let mut parser = alt((dds_parser, dms_parser, das_parser));
Expand All @@ -129,18 +97,11 @@ impl Parser {
}
}

#[derive(Default)]
pub struct ParseConfig {
pub log_with_backtrace: bool,
}

impl Default for ParseConfig {
fn default() -> Self {
ParseConfig {
log_with_backtrace: false,
}
}
}

#[derive(Clone, Debug, Eq, Hash, PartialEq, Serialize, Deserialize)]
pub enum Statement {
// DDS
Expand Down

0 comments on commit f48b9e9

Please sign in to comment.