Skip to content

Commit 2785bef

Browse files
use custom result
1 parent 6c26a1e commit 2785bef

File tree

4 files changed

+20
-18
lines changed

4 files changed

+20
-18
lines changed

crates/pgt_statement_splitter/src/splitter.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ pub use common::source;
88
use pgt_lexer::{Lexed, SyntaxKind};
99
use pgt_text_size::TextRange;
1010

11-
use crate::splitter::common::ReachedEOFException;
11+
use crate::splitter::common::{ReachedEOFException, SplitterResult};
1212

1313
pub struct SplitResult {
1414
pub ranges: Vec<TextRange>,
@@ -171,7 +171,7 @@ impl<'a> Splitter<'a> {
171171

172172
/// Will advance if the `kind` matches the current token.
173173
/// Otherwise, will add a diagnostic to the internal `errors`.
174-
fn expect(&mut self, kind: SyntaxKind) -> Result<(), ReachedEOFException> {
174+
fn expect(&mut self, kind: SyntaxKind) -> SplitterResult {
175175
if self.current() == kind {
176176
self.advance()?;
177177
} else {

crates/pgt_statement_splitter/src/splitter/common.rs

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@ impl std::fmt::Display for ReachedEOFException {
2121

2222
impl Error for ReachedEOFException {}
2323

24-
pub fn source(p: &mut Splitter) -> Result<(), ReachedEOFException> {
24+
pub(crate) type SplitterResult = Result<(), ReachedEOFException>;
25+
26+
pub fn source(p: &mut Splitter) -> SplitterResult {
2527
loop {
2628
match p.current() {
2729
SyntaxKind::EOF => {
@@ -42,7 +44,7 @@ pub fn source(p: &mut Splitter) -> Result<(), ReachedEOFException> {
4244
Ok(())
4345
}
4446

45-
pub(crate) fn statement(p: &mut Splitter) -> Result<(), ReachedEOFException> {
47+
pub(crate) fn statement(p: &mut Splitter) -> SplitterResult {
4648
p.start_stmt();
4749

4850
// Currently, Err means that we reached EOF.
@@ -64,7 +66,7 @@ pub(crate) fn statement(p: &mut Splitter) -> Result<(), ReachedEOFException> {
6466
Ok(())
6567
}
6668

67-
pub(crate) fn begin_end(p: &mut Splitter) -> Result<(), ReachedEOFException> {
69+
pub(crate) fn begin_end(p: &mut Splitter) -> SplitterResult {
6870
p.expect(SyntaxKind::BEGIN_KW)?;
6971

7072
let mut depth = 1;
@@ -93,7 +95,7 @@ pub(crate) fn begin_end(p: &mut Splitter) -> Result<(), ReachedEOFException> {
9395
Ok(())
9496
}
9597

96-
pub(crate) fn parenthesis(p: &mut Splitter) -> Result<(), ReachedEOFException> {
98+
pub(crate) fn parenthesis(p: &mut Splitter) -> SplitterResult {
9799
p.expect(SyntaxKind::L_PAREN)?;
98100

99101
let mut depth = 1;
@@ -122,7 +124,7 @@ pub(crate) fn parenthesis(p: &mut Splitter) -> Result<(), ReachedEOFException> {
122124
Ok(())
123125
}
124126

125-
pub(crate) fn plpgsql_command(p: &mut Splitter) -> Result<(), ReachedEOFException> {
127+
pub(crate) fn plpgsql_command(p: &mut Splitter) -> SplitterResult {
126128
p.expect(SyntaxKind::BACKSLASH)?;
127129

128130
loop {
@@ -142,7 +144,7 @@ pub(crate) fn plpgsql_command(p: &mut Splitter) -> Result<(), ReachedEOFExceptio
142144
Ok(())
143145
}
144146

145-
pub(crate) fn case(p: &mut Splitter) -> Result<(), ReachedEOFException> {
147+
pub(crate) fn case(p: &mut Splitter) -> SplitterResult {
146148
p.expect(SyntaxKind::CASE_KW)?;
147149

148150
loop {
@@ -160,7 +162,7 @@ pub(crate) fn case(p: &mut Splitter) -> Result<(), ReachedEOFException> {
160162
Ok(())
161163
}
162164

163-
pub(crate) fn unknown(p: &mut Splitter, exclude: &[SyntaxKind]) -> Result<(), ReachedEOFException> {
165+
pub(crate) fn unknown(p: &mut Splitter, exclude: &[SyntaxKind]) -> SplitterResult {
164166
loop {
165167
match p.current() {
166168
SyntaxKind::SEMICOLON => {

crates/pgt_statement_splitter/src/splitter/ddl.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
use pgt_lexer::SyntaxKind;
22

3-
use crate::splitter::common::ReachedEOFException;
3+
use crate::splitter::common::SplitterResult;
44

55
use super::{Splitter, common::unknown};
66

7-
pub(crate) fn create(p: &mut Splitter) -> Result<(), ReachedEOFException> {
7+
pub(crate) fn create(p: &mut Splitter) -> SplitterResult {
88
p.expect(SyntaxKind::CREATE_KW)?;
99

1010
unknown(p, &[SyntaxKind::WITH_KW])
1111
}
1212

13-
pub(crate) fn alter(p: &mut Splitter) -> Result<(), ReachedEOFException> {
13+
pub(crate) fn alter(p: &mut Splitter) -> SplitterResult {
1414
p.expect(SyntaxKind::ALTER_KW)?;
1515

1616
unknown(p, &[SyntaxKind::ALTER_KW])

crates/pgt_statement_splitter/src/splitter/dml.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
use pgt_lexer::SyntaxKind;
22

3-
use crate::splitter::common::ReachedEOFException;
3+
use crate::splitter::common::SplitterResult;
44

55
use super::{
66
Splitter,
77
common::{parenthesis, unknown},
88
};
99

10-
pub(crate) fn cte(p: &mut Splitter) -> Result<(), ReachedEOFException> {
10+
pub(crate) fn cte(p: &mut Splitter) -> SplitterResult {
1111
p.expect(SyntaxKind::WITH_KW)?;
1212
p.eat(SyntaxKind::RECURSIVE_KW)?;
1313

@@ -36,26 +36,26 @@ pub(crate) fn cte(p: &mut Splitter) -> Result<(), ReachedEOFException> {
3636
Ok(())
3737
}
3838

39-
pub(crate) fn select(p: &mut Splitter) -> Result<(), ReachedEOFException> {
39+
pub(crate) fn select(p: &mut Splitter) -> SplitterResult {
4040
p.expect(SyntaxKind::SELECT_KW)?;
4141

4242
unknown(p, &[])
4343
}
4444

45-
pub(crate) fn insert(p: &mut Splitter) -> Result<(), ReachedEOFException> {
45+
pub(crate) fn insert(p: &mut Splitter) -> SplitterResult {
4646
p.expect(SyntaxKind::INSERT_KW)?;
4747
p.expect(SyntaxKind::INTO_KW)?;
4848

4949
unknown(p, &[SyntaxKind::SELECT_KW])
5050
}
5151

52-
pub(crate) fn update(p: &mut Splitter) -> Result<(), ReachedEOFException> {
52+
pub(crate) fn update(p: &mut Splitter) -> SplitterResult {
5353
p.expect(SyntaxKind::UPDATE_KW)?;
5454

5555
unknown(p, &[])
5656
}
5757

58-
pub(crate) fn delete(p: &mut Splitter) -> Result<(), ReachedEOFException> {
58+
pub(crate) fn delete(p: &mut Splitter) -> SplitterResult {
5959
p.expect(SyntaxKind::DELETE_KW)?;
6060
p.expect(SyntaxKind::FROM_KW)?;
6161

0 commit comments

Comments
 (0)