mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-08-15 16:11:01 +00:00
internal: rename
This commit is contained in:
parent
d0d05075ed
commit
74de79b1da
13 changed files with 106 additions and 89 deletions
|
@ -12,9 +12,9 @@ pub(crate) use crate::parsing::reparsing::incremental_reparse;
|
|||
|
||||
pub(crate) fn parse_text(text: &str) -> (GreenNode, Vec<SyntaxError>) {
|
||||
let lexed = parser::LexedStr::new(text);
|
||||
let parser_tokens = lexed.to_tokens();
|
||||
let tree_traversal = parser::parse_source_file(&parser_tokens);
|
||||
let (node, errors, _eof) = build_tree(lexed, tree_traversal, false);
|
||||
let parser_input = lexed.to_input();
|
||||
let parser_output = parser::parse_source_file(&parser_input);
|
||||
let (node, errors, _eof) = build_tree(lexed, parser_output, false);
|
||||
(node, errors)
|
||||
}
|
||||
|
||||
|
@ -27,9 +27,9 @@ pub(crate) fn parse_text_as<T: AstNode>(
|
|||
if lexed.errors().next().is_some() {
|
||||
return Err(());
|
||||
}
|
||||
let parser_tokens = lexed.to_tokens();
|
||||
let tree_traversal = parser::parse(&parser_tokens, entry_point);
|
||||
let (node, errors, eof) = build_tree(lexed, tree_traversal, true);
|
||||
let parser_input = lexed.to_input();
|
||||
let parser_output = parser::parse(&parser_input, entry_point);
|
||||
let (node, errors, eof) = build_tree(lexed, parser_output, true);
|
||||
|
||||
if !errors.is_empty() || !eof {
|
||||
return Err(());
|
||||
|
|
|
@ -89,7 +89,7 @@ fn reparse_block(
|
|||
let text = get_text_after_edit(node.clone().into(), edit);
|
||||
|
||||
let lexed = parser::LexedStr::new(text.as_str());
|
||||
let parser_tokens = lexed.to_tokens();
|
||||
let parser_input = lexed.to_input();
|
||||
if !is_balanced(&lexed) {
|
||||
return None;
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
use std::mem;
|
||||
|
||||
use parser::{LexedStr, TreeTraversal};
|
||||
use parser::LexedStr;
|
||||
|
||||
use crate::{
|
||||
ast,
|
||||
|
@ -14,7 +14,7 @@ use crate::{
|
|||
|
||||
pub(crate) fn build_tree(
|
||||
lexed: LexedStr<'_>,
|
||||
tree_traversal: TreeTraversal,
|
||||
parser_output: parser::Output,
|
||||
synthetic_root: bool,
|
||||
) -> (GreenNode, Vec<SyntaxError>, bool) {
|
||||
let mut builder = TextTreeSink::new(lexed);
|
||||
|
@ -23,14 +23,14 @@ pub(crate) fn build_tree(
|
|||
builder.start_node(SyntaxKind::SOURCE_FILE);
|
||||
}
|
||||
|
||||
for event in tree_traversal.iter() {
|
||||
for event in parser_output.iter() {
|
||||
match event {
|
||||
parser::TraversalStep::Token { kind, n_raw_tokens } => {
|
||||
parser::Step::Token { kind, n_input_tokens: n_raw_tokens } => {
|
||||
builder.token(kind, n_raw_tokens)
|
||||
}
|
||||
parser::TraversalStep::EnterNode { kind } => builder.start_node(kind),
|
||||
parser::TraversalStep::LeaveNode => builder.finish_node(),
|
||||
parser::TraversalStep::Error { msg } => {
|
||||
parser::Step::Enter { kind } => builder.start_node(kind),
|
||||
parser::Step::Exit => builder.finish_node(),
|
||||
parser::Step::Error { msg } => {
|
||||
let text_pos = builder.lexed.text_start(builder.pos).try_into().unwrap();
|
||||
builder.inner.error(msg.to_string(), text_pos);
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ pub(crate) fn build_tree(
|
|||
/// Bridges the parser with our specific syntax tree representation.
|
||||
///
|
||||
/// `TextTreeSink` also handles attachment of trivia (whitespace) to nodes.
|
||||
pub(crate) struct TextTreeSink<'a> {
|
||||
struct TextTreeSink<'a> {
|
||||
lexed: LexedStr<'a>,
|
||||
pos: usize,
|
||||
state: State,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue