|
1 |
| -use super::item::{ParseItem, ParseItemSet, ParseItemSetCore}; |
2 |
| -use super::item_set_builder::ParseItemSetBuilder; |
3 |
| -use crate::generate::grammars::PrecedenceEntry; |
4 |
| -use crate::generate::grammars::{ |
5 |
| - InlinedProductionMap, LexicalGrammar, SyntaxGrammar, VariableType, |
| 1 | +use std::{ |
| 2 | + cmp::Ordering, |
| 3 | + collections::{BTreeMap, HashMap, HashSet, VecDeque}, |
| 4 | + fmt::Write, |
| 5 | + hash::BuildHasherDefault, |
6 | 6 | };
|
7 |
| -use crate::generate::node_types::VariableInfo; |
8 |
| -use crate::generate::rules::{Associativity, Precedence, Symbol, SymbolType, TokenSet}; |
9 |
| -use crate::generate::tables::{ |
10 |
| - FieldLocation, GotoAction, ParseAction, ParseState, ParseStateId, ParseTable, ParseTableEntry, |
11 |
| - ProductionInfo, ProductionInfoId, |
12 |
| -}; |
13 |
| -use anyhow::{anyhow, Result}; |
14 |
| -use std::cmp::Ordering; |
15 |
| -use std::collections::{BTreeMap, HashMap, HashSet, VecDeque}; |
16 |
| -use std::fmt::Write; |
17 |
| -use std::hash::BuildHasherDefault; |
18 |
| -use std::u32; |
19 | 7 |
|
| 8 | +use anyhow::{anyhow, Result}; |
20 | 9 | use indexmap::{map::Entry, IndexMap};
|
21 | 10 | use rustc_hash::FxHasher;
|
22 | 11 |
|
| 12 | +use super::{ |
| 13 | + item::{ParseItem, ParseItemSet, ParseItemSetCore}, |
| 14 | + item_set_builder::ParseItemSetBuilder, |
| 15 | +}; |
| 16 | +use crate::generate::{ |
| 17 | + grammars::{ |
| 18 | + InlinedProductionMap, LexicalGrammar, PrecedenceEntry, SyntaxGrammar, VariableType, |
| 19 | + }, |
| 20 | + node_types::VariableInfo, |
| 21 | + rules::{Associativity, Precedence, Symbol, SymbolType, TokenSet}, |
| 22 | + tables::{ |
| 23 | + FieldLocation, GotoAction, ParseAction, ParseState, ParseStateId, ParseTable, |
| 24 | + ParseTableEntry, ProductionInfo, ProductionInfoId, |
| 25 | + }, |
| 26 | +}; |
| 27 | + |
23 | 28 | // For conflict reporting, each parse state is associated with an example
|
24 | 29 | // sequence of symbols that could lead to that parse state.
|
25 | 30 | type SymbolSequence = Vec<Symbol>;
|
|
0 commit comments