aboutsummaryrefslogtreecommitdiff
path: root/codeless/server/src/handlers.rs
blob: 3f257941add7eb8a70f870bb0e87a1356670df30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
use libanalysis::World;
use libeditor;
use {req, Result};

pub fn handle_syntax_tree(
    world: World,
    params: req::SyntaxTreeParams
) -> Result<String> {
    let path = params.text_document.uri.to_file_path()
        .map_err(|()| format_err!("invalid path"))?;
    let file = world.file_syntax(&path)?;
    Ok(libeditor::syntax_tree(&file))
}