From 412ac63ff517c7eab5e1cfe0bf239616bd2c13a1 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Thu, 21 Feb 2019 15:24:42 +0300 Subject: docs --- crates/ra_syntax/src/lib.rs | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) (limited to 'crates/ra_syntax/src/lib.rs') diff --git a/crates/ra_syntax/src/lib.rs b/crates/ra_syntax/src/lib.rs index c788bddec..6982b9815 100644 --- a/crates/ra_syntax/src/lib.rs +++ b/crates/ra_syntax/src/lib.rs @@ -1,20 +1,21 @@ -//! An experimental implementation of [Rust RFC#2256 libsyntax2.0][rfc#2256]. +//! Syntax Tree library used throughout the rust analyzer. //! -//! The intent is to be an IDE-ready parser, i.e. one that offers +//! Properties: +//! - easy and fast incremental re-parsing +//! - graceful handling of errors +//! - full-fidelity representation (*any* text can be precisely represented as +//! a syntax tree) //! -//! - easy and fast incremental re-parsing, -//! - graceful handling of errors, and -//! - maintains all information in the source file. +//! For more information, see the [RFC]. Current implementation is inspired by +//! the [Swift] one. //! -//! For more information, see [the RFC][rfc#2265], or [the working draft][RFC.md]. +//! The most interesting modules here are `syntax_node` (which defines concrete +//! syntax tree) and `ast` (which defines abstract syntax tree on top of the +//! CST). The actual parser live in a separate `ra_parser` crate, thought the +//! lexer lives in this crate. //! -//! [rfc#2256]: -//! [RFC.md]: - -#![forbid(missing_debug_implementations, unconditional_recursion, future_incompatible)] -#![deny(bad_style, missing_docs)] -#![allow(missing_docs)] -//#![warn(unreachable_pub)] // rust-lang/rust#47816 +//! [RFC]: +//! [Swift]: mod syntax_node; mod syntax_text; -- cgit v1.2.3