Skip to content

Suggest splitting parser.rs into smaller mod files #944

Description

@r4ntix

Background

The code of current parser.rs is too large, it's difficult to read and maintain. I'd suggest splitting it into smaller mod files.

Proposal

I have split the ALTER ROLE code into parser/alter.rs in this PR feat: add ALTER ROLE syntax of PostgreSQL and MS SQL Server by r4ntix · Pull Request #942 · sqlparser-rs/sqlparser-rs (github.com)

I think we can do a refactoring and split the parser, like this:

./src/parser/
|-- alter.rs
|-- create.rs
|-- drop.rs
|-- mod.rs
|-- select.rs
|-- ...
`-- utils.rs

I wonder what people would suggest about this?

Implementation Plan

we can break it up into some issues and PRs to step through this refactoring.

DDL

all tasks:

  • ANALYZE
  • ALTER
  • CREATE
  • DECLARE
  • DROP
  • UPDATE
  • TRUNCATE

DML

all tasks:

  • DELETE
  • EXPLAIN
  • FETCH
  • INSERT
  • SELECT
  • UPDATE
  • MERGE
  • MSCK
  • ROLLBACK
  • SET
  • START
  • TRUNCATE

DCL

all tasks:

  • COMMIT
  • DESCRIBE
  • DISCARD
  • GRANT
  • REVOKE
  • SAVEPOINT
  • SHOW
  • USE

PostgreSQL/BigQuery/MySQL/SparkSQL/ClickHouse/Hive

all tasks:

  • ASSERT
  • BEGIN
  • CACHE
  • CLOSE
  • COPY
  • DEALLOCATE
  • EXECUTE
  • KILL
  • PREPARE
  • UNCACHE

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions