Move ParsedFile to top

This commit is contained in:
Aleksey Kladov 2018-08-25 11:40:17 +03:00
parent f104458d45
commit 9fae494a8d
7 changed files with 39 additions and 39 deletions

View file

@ -3,7 +3,8 @@ use std::{
};
use libsyntax2::{
ast::{self, AstNode, AttrsOwner, TypeParamsOwner, NameOwner, ParsedFile},
ParsedFile,
ast::{self, AstNode, AttrsOwner, TypeParamsOwner, NameOwner},
SyntaxKind::COMMA,
SyntaxNodeRef,
algo::{

View file

@ -10,8 +10,7 @@ mod code_actions;
mod typing;
use libsyntax2::{
ast::{self, NameOwner},
AstNode,
ast::{self, AstNode, NameOwner},
algo::{walk, find_leaf_at_offset},
SyntaxKind::{self, *},
};
@ -52,11 +51,11 @@ pub enum RunnableKind {
Bin,
}
pub fn parse(text: &str) -> ast::ParsedFile {
ast::ParsedFile::parse(text)
pub fn parse(text: &str) -> ParsedFile {
ParsedFile::parse(text)
}
pub fn matching_brace(file: &ast::ParsedFile, offset: TextUnit) -> Option<TextUnit> {
pub fn matching_brace(file: &ParsedFile, offset: TextUnit) -> Option<TextUnit> {
const BRACES: &[SyntaxKind] = &[
L_CURLY, R_CURLY,
L_BRACK, R_BRACK,
@ -76,7 +75,7 @@ pub fn matching_brace(file: &ast::ParsedFile, offset: TextUnit) -> Option<TextUn
Some(matching_node.range().start())
}
pub fn highlight(file: &ast::ParsedFile) -> Vec<HighlightedRange> {
pub fn highlight(file: &ParsedFile) -> Vec<HighlightedRange> {
let mut res = Vec::new();
for node in walk::preorder(file.syntax()) {
let tag = match node.kind() {
@ -99,7 +98,7 @@ pub fn highlight(file: &ast::ParsedFile) -> Vec<HighlightedRange> {
res
}
pub fn diagnostics(file: &ast::ParsedFile) -> Vec<Diagnostic> {
pub fn diagnostics(file: &ParsedFile) -> Vec<Diagnostic> {
let mut res = Vec::new();
for node in walk::preorder(file.syntax()) {
@ -117,11 +116,11 @@ pub fn diagnostics(file: &ast::ParsedFile) -> Vec<Diagnostic> {
res
}
pub fn syntax_tree(file: &ast::ParsedFile) -> String {
pub fn syntax_tree(file: &ParsedFile) -> String {
::libsyntax2::utils::dump_tree(file.syntax())
}
pub fn runnables(file: &ast::ParsedFile) -> Vec<Runnable> {
pub fn runnables(file: &ParsedFile) -> Vec<Runnable> {
file.ast()
.functions()
.filter_map(|f| {

View file

@ -1,5 +1,5 @@
use libsyntax2::{
TextUnit, TextRange, SyntaxNodeRef,
TextUnit, TextRange, SyntaxNodeRef, ParsedFile,
ast,
algo::{
walk::preorder,
@ -11,7 +11,7 @@ use libsyntax2::{
use {ActionResult, EditBuilder};
pub fn join_lines(file: &ast::ParsedFile, range: TextRange) -> ActionResult {
pub fn join_lines(file: &ParsedFile, range: TextRange) -> ActionResult {
let range = if range.is_empty() {
let text = file.syntax().text();
let text = &text[TextRange::from_to(range.start(), TextUnit::of_str(&text))];