mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-11-14 00:47:18 +00:00
Merge #5631
5631: Finalize pattern grammar r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
This commit is contained in:
commit
38ab326aac
121 changed files with 930 additions and 938 deletions
|
@ -27,7 +27,7 @@ pub(crate) fn add_explicit_type(acc: &mut Assists, ctx: &AssistContext) -> Optio
|
|||
let expr = let_stmt.initializer()?;
|
||||
// Must be a binding
|
||||
let pat = match let_stmt.pat()? {
|
||||
ast::Pat::BindPat(bind_pat) => bind_pat,
|
||||
ast::Pat::IdentPat(bind_pat) => bind_pat,
|
||||
_ => return None,
|
||||
};
|
||||
let pat_range = pat.syntax().text_range();
|
||||
|
|
|
@ -43,7 +43,7 @@ pub(crate) fn fill_match_arms(acc: &mut Assists, ctx: &AssistContext) -> Option<
|
|||
|
||||
let mut arms: Vec<MatchArm> = match_arm_list.arms().collect();
|
||||
if arms.len() == 1 {
|
||||
if let Some(Pat::PlaceholderPat(..)) = arms[0].pat() {
|
||||
if let Some(Pat::WildcardPat(..)) = arms[0].pat() {
|
||||
arms.clear();
|
||||
}
|
||||
}
|
||||
|
@ -116,17 +116,15 @@ pub(crate) fn fill_match_arms(acc: &mut Assists, ctx: &AssistContext) -> Option<
|
|||
match (first_new_arm, ctx.config.snippet_cap) {
|
||||
(Some(first_new_arm), Some(cap)) => {
|
||||
let extend_lifetime;
|
||||
let cursor = match first_new_arm
|
||||
.syntax()
|
||||
.descendants()
|
||||
.find_map(ast::PlaceholderPat::cast)
|
||||
{
|
||||
Some(it) => {
|
||||
extend_lifetime = it.syntax().clone();
|
||||
Cursor::Replace(&extend_lifetime)
|
||||
}
|
||||
None => Cursor::Before(first_new_arm.syntax()),
|
||||
};
|
||||
let cursor =
|
||||
match first_new_arm.syntax().descendants().find_map(ast::WildcardPat::cast)
|
||||
{
|
||||
Some(it) => {
|
||||
extend_lifetime = it.syntax().clone();
|
||||
Cursor::Replace(&extend_lifetime)
|
||||
}
|
||||
None => Cursor::Before(first_new_arm.syntax()),
|
||||
};
|
||||
let snippet = render_snippet(cap, new_arm_list.syntax(), cursor);
|
||||
builder.replace_snippet(cap, old_range, snippet);
|
||||
}
|
||||
|
@ -152,7 +150,7 @@ fn does_pat_match_variant(pat: &Pat, var: &Pat) -> bool {
|
|||
let first_node_text = |pat: &Pat| pat.syntax().first_child().map(|node| node.text());
|
||||
|
||||
let pat_head = match pat {
|
||||
Pat::BindPat(bind_pat) => {
|
||||
Pat::IdentPat(bind_pat) => {
|
||||
if let Some(p) = bind_pat.pat() {
|
||||
first_node_text(&p)
|
||||
} else {
|
||||
|
|
|
@ -29,7 +29,7 @@ use crate::{
|
|||
pub(crate) fn inline_local_variable(acc: &mut Assists, ctx: &AssistContext) -> Option<()> {
|
||||
let let_stmt = ctx.find_node_at_offset::<ast::LetStmt>()?;
|
||||
let bind_pat = match let_stmt.pat()? {
|
||||
ast::Pat::BindPat(pat) => pat,
|
||||
ast::Pat::IdentPat(pat) => pat,
|
||||
_ => return None,
|
||||
};
|
||||
if bind_pat.mut_token().is_some() {
|
||||
|
|
|
@ -86,7 +86,7 @@ pub(crate) fn merge_match_arms(acc: &mut Assists, ctx: &AssistContext) -> Option
|
|||
}
|
||||
|
||||
fn contains_placeholder(a: &ast::MatchArm) -> bool {
|
||||
matches!(a.pat(), Some(ast::Pat::PlaceholderPat(..)))
|
||||
matches!(a.pat(), Some(ast::Pat::WildcardPat(..)))
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
|
|
|
@ -57,7 +57,7 @@ fn reorder<R: AstNode>(acc: &mut Assists, ctx: &AssistContext) -> Option<()> {
|
|||
fn get_fields_kind(node: &SyntaxNode) -> Vec<SyntaxKind> {
|
||||
match node.kind() {
|
||||
RECORD_EXPR => vec![RECORD_EXPR_FIELD],
|
||||
RECORD_PAT => vec![RECORD_FIELD_PAT, BIND_PAT],
|
||||
RECORD_PAT => vec![RECORD_PAT_FIELD, IDENT_PAT],
|
||||
_ => vec![],
|
||||
}
|
||||
}
|
||||
|
@ -66,7 +66,7 @@ fn get_field_name(node: &SyntaxNode) -> String {
|
|||
let res = match_ast! {
|
||||
match node {
|
||||
ast::RecordExprField(field) => field.field_name().map(|it| it.to_string()),
|
||||
ast::RecordFieldPat(field) => field.field_name().map(|it| it.to_string()),
|
||||
ast::RecordPatField(field) => field.field_name().map(|it| it.to_string()),
|
||||
_ => None,
|
||||
}
|
||||
};
|
||||
|
|
|
@ -62,8 +62,7 @@ pub(crate) fn replace_let_with_if_let(acc: &mut Assists, ctx: &AssistContext) ->
|
|||
let if_ = make::expr_if(make::condition(init, Some(with_placeholder)), block);
|
||||
let stmt = make::expr_stmt(if_);
|
||||
|
||||
let placeholder =
|
||||
stmt.syntax().descendants().find_map(ast::PlaceholderPat::cast).unwrap();
|
||||
let placeholder = stmt.syntax().descendants().find_map(ast::WildcardPat::cast).unwrap();
|
||||
let stmt = stmt.replace_descendant(placeholder.into(), original_pat);
|
||||
|
||||
edit.replace_ast(ast::Stmt::from(let_stmt), ast::Stmt::from(stmt));
|
||||
|
|
|
@ -1002,7 +1002,7 @@ impl Local {
|
|||
Type::new(db, krate, def, ty)
|
||||
}
|
||||
|
||||
pub fn source(self, db: &dyn HirDatabase) -> InFile<Either<ast::BindPat, ast::SelfParam>> {
|
||||
pub fn source(self, db: &dyn HirDatabase) -> InFile<Either<ast::IdentPat, ast::SelfParam>> {
|
||||
let (_body, source_map) = db.body_with_source_map(self.parent.into());
|
||||
let src = source_map.pat_syntax(self.pat_id).unwrap(); // Hmm...
|
||||
let root = src.file_syntax(db.upcast());
|
||||
|
|
|
@ -216,7 +216,7 @@ impl<'db, DB: HirDatabase> Semantics<'db, DB> {
|
|||
self.imp.resolve_record_field(field)
|
||||
}
|
||||
|
||||
pub fn resolve_record_field_pat(&self, field: &ast::RecordFieldPat) -> Option<Field> {
|
||||
pub fn resolve_record_field_pat(&self, field: &ast::RecordPatField) -> Option<Field> {
|
||||
self.imp.resolve_record_field_pat(field)
|
||||
}
|
||||
|
||||
|
@ -236,7 +236,7 @@ impl<'db, DB: HirDatabase> Semantics<'db, DB> {
|
|||
self.imp.lower_path(path)
|
||||
}
|
||||
|
||||
pub fn resolve_bind_pat_to_const(&self, pat: &ast::BindPat) -> Option<ModuleDef> {
|
||||
pub fn resolve_bind_pat_to_const(&self, pat: &ast::IdentPat) -> Option<ModuleDef> {
|
||||
self.imp.resolve_bind_pat_to_const(pat)
|
||||
}
|
||||
|
||||
|
@ -429,7 +429,7 @@ impl<'db> SemanticsImpl<'db> {
|
|||
self.analyze(field.syntax()).resolve_record_field(self.db, field)
|
||||
}
|
||||
|
||||
fn resolve_record_field_pat(&self, field: &ast::RecordFieldPat) -> Option<Field> {
|
||||
fn resolve_record_field_pat(&self, field: &ast::RecordPatField) -> Option<Field> {
|
||||
self.analyze(field.syntax()).resolve_record_field_pat(self.db, field)
|
||||
}
|
||||
|
||||
|
@ -452,7 +452,7 @@ impl<'db> SemanticsImpl<'db> {
|
|||
Path::from_src(path.clone(), &Hygiene::new(self.db.upcast(), src.file_id.into()))
|
||||
}
|
||||
|
||||
fn resolve_bind_pat_to_const(&self, pat: &ast::BindPat) -> Option<ModuleDef> {
|
||||
fn resolve_bind_pat_to_const(&self, pat: &ast::IdentPat) -> Option<ModuleDef> {
|
||||
self.analyze(pat.syntax()).resolve_bind_pat_to_const(self.db, pat)
|
||||
}
|
||||
|
||||
|
@ -594,7 +594,7 @@ to_def_impls![
|
|||
(crate::EnumVariant, ast::Variant, enum_variant_to_def),
|
||||
(crate::TypeParam, ast::TypeParam, type_param_to_def),
|
||||
(crate::MacroDef, ast::MacroCall, macro_call_to_def), // this one is dubious, not all calls are macros
|
||||
(crate::Local, ast::BindPat, bind_pat_to_def),
|
||||
(crate::Local, ast::IdentPat, bind_pat_to_def),
|
||||
];
|
||||
|
||||
fn find_root(node: &SyntaxNode) -> SyntaxNode {
|
||||
|
|
|
@ -106,7 +106,7 @@ impl SourceToDefCtx<'_, '_> {
|
|||
}
|
||||
pub(super) fn bind_pat_to_def(
|
||||
&mut self,
|
||||
src: InFile<ast::BindPat>,
|
||||
src: InFile<ast::IdentPat>,
|
||||
) -> Option<(DefWithBodyId, PatId)> {
|
||||
let container = self.find_pat_container(src.as_ref().map(|it| it.syntax()))?;
|
||||
let (_body, source_map) = self.db.body_with_source_map(container);
|
||||
|
|
|
@ -182,7 +182,7 @@ impl SourceAnalyzer {
|
|||
pub(crate) fn resolve_record_field_pat(
|
||||
&self,
|
||||
_db: &dyn HirDatabase,
|
||||
field: &ast::RecordFieldPat,
|
||||
field: &ast::RecordPatField,
|
||||
) -> Option<Field> {
|
||||
let pat_id = self.pat_id(&field.pat()?)?;
|
||||
let struct_field = self.infer.as_ref()?.record_field_pat_resolution(pat_id)?;
|
||||
|
@ -202,7 +202,7 @@ impl SourceAnalyzer {
|
|||
pub(crate) fn resolve_bind_pat_to_const(
|
||||
&self,
|
||||
db: &dyn HirDatabase,
|
||||
pat: &ast::BindPat,
|
||||
pat: &ast::IdentPat,
|
||||
) -> Option<ModuleDef> {
|
||||
let pat_id = self.pat_id(&pat.clone().into())?;
|
||||
let body = self.body.as_ref()?;
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
//! Transforms `ast::Expr` into an equivalent `hir_def::expr::Expr`
|
||||
//! representation.
|
||||
|
||||
use std::{any::type_name, sync::Arc};
|
||||
|
||||
use either::Either;
|
||||
use hir_expand::{
|
||||
hygiene::Hygiene,
|
||||
|
@ -10,11 +12,12 @@ use hir_expand::{
|
|||
use ra_arena::Arena;
|
||||
use ra_syntax::{
|
||||
ast::{
|
||||
self, ArgListOwner, ArrayExprKind, LiteralKind, LoopBodyOwner, NameOwner,
|
||||
self, ArgListOwner, ArrayExprKind, AstChildren, LiteralKind, LoopBodyOwner, NameOwner,
|
||||
SlicePatComponents,
|
||||
},
|
||||
AstNode, AstPtr,
|
||||
};
|
||||
use rustc_hash::FxHashMap;
|
||||
use test_utils::mark;
|
||||
|
||||
use crate::{
|
||||
|
@ -35,9 +38,6 @@ use crate::{
|
|||
};
|
||||
|
||||
use super::{ExprSource, PatSource};
|
||||
use ast::AstChildren;
|
||||
use rustc_hash::FxHashMap;
|
||||
use std::{any::type_name, sync::Arc};
|
||||
|
||||
pub(crate) struct LowerCtx {
|
||||
hygiene: Hygiene,
|
||||
|
@ -723,7 +723,7 @@ impl ExprCollector<'_> {
|
|||
|
||||
fn collect_pat(&mut self, pat: ast::Pat) -> PatId {
|
||||
let pattern = match &pat {
|
||||
ast::Pat::BindPat(bp) => {
|
||||
ast::Pat::IdentPat(bp) => {
|
||||
let name = bp.name().map(|nr| nr.as_name()).unwrap_or_else(Name::missing);
|
||||
let annotation =
|
||||
BindingAnnotation::new(bp.mut_token().is_some(), bp.ref_token().is_some());
|
||||
|
@ -783,32 +783,28 @@ impl ExprCollector<'_> {
|
|||
let (args, ellipsis) = self.collect_tuple_pat(p.args());
|
||||
Pat::Tuple { args, ellipsis }
|
||||
}
|
||||
ast::Pat::PlaceholderPat(_) => Pat::Wild,
|
||||
ast::Pat::WildcardPat(_) => Pat::Wild,
|
||||
ast::Pat::RecordPat(p) => {
|
||||
let path = p.path().and_then(|path| self.expander.parse_path(path));
|
||||
let record_field_pat_list =
|
||||
p.record_field_pat_list().expect("every struct should have a field list");
|
||||
let mut fields: Vec<_> = record_field_pat_list
|
||||
.bind_pats()
|
||||
.filter_map(|bind_pat| {
|
||||
let ast_pat =
|
||||
ast::Pat::cast(bind_pat.syntax().clone()).expect("bind pat is a pat");
|
||||
let args: Vec<_> = p
|
||||
.record_pat_field_list()
|
||||
.expect("every struct should have a field list")
|
||||
.fields()
|
||||
.filter_map(|f| {
|
||||
let ast_pat = f.pat()?;
|
||||
let pat = self.collect_pat(ast_pat);
|
||||
let name = bind_pat.name()?.as_name();
|
||||
let name = f.field_name()?.as_name();
|
||||
Some(RecordFieldPat { name, pat })
|
||||
})
|
||||
.collect();
|
||||
let iter = record_field_pat_list.record_field_pats().filter_map(|f| {
|
||||
let ast_pat = f.pat()?;
|
||||
let pat = self.collect_pat(ast_pat);
|
||||
let name = f.field_name()?.as_name();
|
||||
Some(RecordFieldPat { name, pat })
|
||||
});
|
||||
fields.extend(iter);
|
||||
|
||||
let ellipsis = record_field_pat_list.dotdot_token().is_some();
|
||||
let ellipsis = p
|
||||
.record_pat_field_list()
|
||||
.expect("every struct should have a field list")
|
||||
.dotdot_token()
|
||||
.is_some();
|
||||
|
||||
Pat::Record { path, args: fields, ellipsis }
|
||||
Pat::Record { path, args, ellipsis }
|
||||
}
|
||||
ast::Pat::SlicePat(p) => {
|
||||
let SlicePatComponents { prefix, slice, suffix } = p.components();
|
||||
|
|
|
@ -92,7 +92,7 @@ impl AstDiagnostic for MissingFields {
|
|||
#[derive(Debug)]
|
||||
pub struct MissingPatFields {
|
||||
pub file: HirFileId,
|
||||
pub field_list: AstPtr<ast::RecordFieldPatList>,
|
||||
pub field_list: AstPtr<ast::RecordPatFieldList>,
|
||||
pub missed_fields: Vec<Name>,
|
||||
}
|
||||
|
||||
|
|
|
@ -131,7 +131,7 @@ impl<'a, 'b> ExprValidator<'a, 'b> {
|
|||
if let Some(expr) = source_ptr.value.as_ref().left() {
|
||||
let root = source_ptr.file_syntax(db.upcast());
|
||||
if let ast::Pat::RecordPat(record_pat) = expr.to_node(&root) {
|
||||
if let Some(field_list) = record_pat.record_field_pat_list() {
|
||||
if let Some(field_list) = record_pat.record_pat_field_list() {
|
||||
let variant_data = variant_data(db.upcast(), variant_def);
|
||||
let missed_fields = missed_fields
|
||||
.into_iter()
|
||||
|
|
|
@ -265,7 +265,7 @@ impl<'a> CompletionContext<'a> {
|
|||
return;
|
||||
}
|
||||
// FIXME: remove this (V) duplication and make the check more precise
|
||||
if name_ref.syntax().ancestors().find_map(ast::RecordFieldPatList::cast).is_some() {
|
||||
if name_ref.syntax().ancestors().find_map(ast::RecordPatFieldList::cast).is_some() {
|
||||
self.record_pat_syntax =
|
||||
self.sema.find_node_at_offset_with_macros(&original_file, offset);
|
||||
}
|
||||
|
@ -275,7 +275,7 @@ impl<'a> CompletionContext<'a> {
|
|||
// Otherwise, see if this is a declaration. We can use heuristics to
|
||||
// suggest declaration names, see `CompletionKind::Magic`.
|
||||
if let Some(name) = find_node_at_offset::<ast::Name>(&file_with_fake_ident, offset) {
|
||||
if let Some(bind_pat) = name.syntax().ancestors().find_map(ast::BindPat::cast) {
|
||||
if let Some(bind_pat) = name.syntax().ancestors().find_map(ast::IdentPat::cast) {
|
||||
self.is_pat_binding_or_const = true;
|
||||
if bind_pat.at_token().is_some()
|
||||
|| bind_pat.ref_token().is_some()
|
||||
|
@ -283,7 +283,7 @@ impl<'a> CompletionContext<'a> {
|
|||
{
|
||||
self.is_pat_binding_or_const = false;
|
||||
}
|
||||
if bind_pat.syntax().parent().and_then(ast::RecordFieldPatList::cast).is_some() {
|
||||
if bind_pat.syntax().parent().and_then(ast::RecordPatFieldList::cast).is_some() {
|
||||
self.is_pat_binding_or_const = false;
|
||||
}
|
||||
if let Some(let_stmt) = bind_pat.syntax().ancestors().find_map(ast::LetStmt::cast) {
|
||||
|
@ -300,7 +300,7 @@ impl<'a> CompletionContext<'a> {
|
|||
return;
|
||||
}
|
||||
// FIXME: remove this (^) duplication and make the check more precise
|
||||
if name.syntax().ancestors().find_map(ast::RecordFieldPatList::cast).is_some() {
|
||||
if name.syntax().ancestors().find_map(ast::RecordPatFieldList::cast).is_some() {
|
||||
self.record_pat_syntax =
|
||||
self.sema.find_node_at_offset_with_macros(&original_file, offset);
|
||||
}
|
||||
|
|
|
@ -44,7 +44,7 @@ fn test_has_block_expr_parent() {
|
|||
}
|
||||
|
||||
pub(crate) fn has_bind_pat_parent(element: SyntaxElement) -> bool {
|
||||
element.ancestors().find(|it| it.kind() == BIND_PAT).is_some()
|
||||
element.ancestors().find(|it| it.kind() == IDENT_PAT).is_some()
|
||||
}
|
||||
#[test]
|
||||
fn test_has_bind_pat_parent() {
|
||||
|
|
|
@ -7,7 +7,7 @@ use ra_ide_db::{defs::Definition, RootDatabase};
|
|||
use ra_syntax::{
|
||||
ast::{self, DocCommentsOwner, NameOwner},
|
||||
match_ast, AstNode, SmolStr,
|
||||
SyntaxKind::{self, BIND_PAT, TYPE_PARAM},
|
||||
SyntaxKind::{self, IDENT_PAT, TYPE_PARAM},
|
||||
TextRange,
|
||||
};
|
||||
|
||||
|
@ -339,7 +339,7 @@ impl ToNav for hir::Local {
|
|||
NavigationTarget {
|
||||
file_id: full_range.file_id,
|
||||
name,
|
||||
kind: BIND_PAT,
|
||||
kind: IDENT_PAT,
|
||||
full_range: full_range.range,
|
||||
focus_range: None,
|
||||
container_name: None,
|
||||
|
|
|
@ -37,7 +37,7 @@ fn try_extend_selection(
|
|||
|
||||
let string_kinds = [COMMENT, STRING, RAW_STRING, BYTE_STRING, RAW_BYTE_STRING];
|
||||
let list_kinds = [
|
||||
RECORD_FIELD_PAT_LIST,
|
||||
RECORD_PAT_FIELD_LIST,
|
||||
MATCH_ARM_LIST,
|
||||
RECORD_FIELD_LIST,
|
||||
TUPLE_FIELD_LIST,
|
||||
|
|
|
@ -86,7 +86,7 @@ fn fold_kind(kind: SyntaxKind) -> Option<FoldKind> {
|
|||
USE => Some(FoldKind::Imports),
|
||||
ARG_LIST | PARAM_LIST => Some(FoldKind::ArgList),
|
||||
RECORD_FIELD_LIST
|
||||
| RECORD_FIELD_PAT_LIST
|
||||
| RECORD_PAT_FIELD_LIST
|
||||
| RECORD_EXPR_FIELD_LIST
|
||||
| ITEM_LIST
|
||||
| EXTERN_ITEM_LIST
|
||||
|
|
|
@ -78,7 +78,7 @@ pub(crate) fn inlay_hints(
|
|||
match node {
|
||||
ast::CallExpr(it) => { get_param_name_hints(&mut res, &sema, config, ast::Expr::from(it)); },
|
||||
ast::MethodCallExpr(it) => { get_param_name_hints(&mut res, &sema, config, ast::Expr::from(it)); },
|
||||
ast::BindPat(it) => { get_bind_pat_hints(&mut res, &sema, config, it); },
|
||||
ast::IdentPat(it) => { get_bind_pat_hints(&mut res, &sema, config, it); },
|
||||
_ => (),
|
||||
}
|
||||
}
|
||||
|
@ -161,7 +161,7 @@ fn get_param_name_hints(
|
|||
Either::Left(self_param) => Some((self_param.to_string(), arg)),
|
||||
Either::Right(pat) => {
|
||||
let param_name = match pat {
|
||||
ast::Pat::BindPat(it) => it.name()?.to_string(),
|
||||
ast::Pat::IdentPat(it) => it.name()?.to_string(),
|
||||
it => it.to_string(),
|
||||
};
|
||||
Some((param_name, arg))
|
||||
|
@ -182,7 +182,7 @@ fn get_bind_pat_hints(
|
|||
acc: &mut Vec<InlayHint>,
|
||||
sema: &Semantics<RootDatabase>,
|
||||
config: &InlayHintsConfig,
|
||||
pat: ast::BindPat,
|
||||
pat: ast::IdentPat,
|
||||
) -> Option<()> {
|
||||
if !config.type_hints {
|
||||
return None;
|
||||
|
@ -202,7 +202,7 @@ fn get_bind_pat_hints(
|
|||
Some(())
|
||||
}
|
||||
|
||||
fn pat_is_enum_variant(db: &RootDatabase, bind_pat: &ast::BindPat, pat_ty: &Type) -> bool {
|
||||
fn pat_is_enum_variant(db: &RootDatabase, bind_pat: &ast::IdentPat, pat_ty: &Type) -> bool {
|
||||
if let Some(Adt::Enum(enum_data)) = pat_ty.as_adt() {
|
||||
let pat_text = bind_pat.to_string();
|
||||
enum_data
|
||||
|
@ -215,7 +215,11 @@ fn pat_is_enum_variant(db: &RootDatabase, bind_pat: &ast::BindPat, pat_ty: &Type
|
|||
}
|
||||
}
|
||||
|
||||
fn should_not_display_type_hint(db: &RootDatabase, bind_pat: &ast::BindPat, pat_ty: &Type) -> bool {
|
||||
fn should_not_display_type_hint(
|
||||
db: &RootDatabase,
|
||||
bind_pat: &ast::IdentPat,
|
||||
pat_ty: &Type,
|
||||
) -> bool {
|
||||
if pat_ty.is_unknown() {
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -150,7 +150,7 @@ fn decl_access(def: &Definition, syntax: &SyntaxNode, range: TextRange) -> Optio
|
|||
let stmt = find_node_at_offset::<ast::LetStmt>(syntax, range.start())?;
|
||||
if stmt.initializer().is_some() {
|
||||
let pat = stmt.pat()?;
|
||||
if let ast::Pat::BindPat(it) = pat {
|
||||
if let ast::Pat::IdentPat(it) = pat {
|
||||
if it.mut_token().is_some() {
|
||||
return Some(ReferenceAccess::Write);
|
||||
}
|
||||
|
@ -290,7 +290,7 @@ fn main() {
|
|||
);
|
||||
check_result(
|
||||
refs,
|
||||
"i BIND_PAT FileId(1) 24..25 Other Write",
|
||||
"i IDENT_PAT FileId(1) 24..25 Other Write",
|
||||
&[
|
||||
"FileId(1) 50..51 Other Write",
|
||||
"FileId(1) 54..55 Other Read",
|
||||
|
@ -316,7 +316,7 @@ fn bar() {
|
|||
);
|
||||
check_result(
|
||||
refs,
|
||||
"spam BIND_PAT FileId(1) 19..23 Other",
|
||||
"spam IDENT_PAT FileId(1) 19..23 Other",
|
||||
&["FileId(1) 34..38 Other Read", "FileId(1) 41..45 Other Read"],
|
||||
);
|
||||
}
|
||||
|
@ -330,7 +330,7 @@ fn foo(i : u32) -> u32 {
|
|||
}
|
||||
"#,
|
||||
);
|
||||
check_result(refs, "i BIND_PAT FileId(1) 7..8 Other", &["FileId(1) 29..30 Other Read"]);
|
||||
check_result(refs, "i IDENT_PAT FileId(1) 7..8 Other", &["FileId(1) 29..30 Other Read"]);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
@ -342,7 +342,7 @@ fn foo(i<|> : u32) -> u32 {
|
|||
}
|
||||
"#,
|
||||
);
|
||||
check_result(refs, "i BIND_PAT FileId(1) 7..8 Other", &["FileId(1) 29..30 Other Read"]);
|
||||
check_result(refs, "i IDENT_PAT FileId(1) 7..8 Other", &["FileId(1) 29..30 Other Read"]);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
@ -559,7 +559,7 @@ fn foo() {
|
|||
);
|
||||
check_result(
|
||||
refs,
|
||||
"i BIND_PAT FileId(1) 23..24 Other Write",
|
||||
"i IDENT_PAT FileId(1) 23..24 Other Write",
|
||||
&["FileId(1) 34..35 Other Write", "FileId(1) 38..39 Other Read"],
|
||||
);
|
||||
}
|
||||
|
@ -595,7 +595,7 @@ fn foo() {
|
|||
}
|
||||
"#,
|
||||
);
|
||||
check_result(refs, "i BIND_PAT FileId(1) 19..20 Other", &["FileId(1) 26..27 Other Write"]);
|
||||
check_result(refs, "i IDENT_PAT FileId(1) 19..20 Other", &["FileId(1) 26..27 Other Write"]);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
|
|
@ -717,7 +717,7 @@ fn highlight_name_by_syntax(name: ast::Name) -> Highlight {
|
|||
CONST => HighlightTag::Constant,
|
||||
STATIC => HighlightTag::Static,
|
||||
VARIANT => HighlightTag::EnumVariant,
|
||||
BIND_PAT => HighlightTag::Local,
|
||||
IDENT_PAT => HighlightTag::Local,
|
||||
_ => default,
|
||||
};
|
||||
|
||||
|
|
|
@ -111,7 +111,7 @@ pub fn classify_name(sema: &Semantics<RootDatabase>, name: &ast::Name) -> Option
|
|||
|
||||
let parent = name.syntax().parent()?;
|
||||
|
||||
if let Some(bind_pat) = ast::BindPat::cast(parent.clone()) {
|
||||
if let Some(bind_pat) = ast::IdentPat::cast(parent.clone()) {
|
||||
if let Some(def) = sema.resolve_bind_pat_to_const(&bind_pat) {
|
||||
return Some(NameClass::ConstReference(Definition::ModuleDef(def)));
|
||||
}
|
||||
|
@ -128,10 +128,10 @@ pub fn classify_name(sema: &Semantics<RootDatabase>, name: &ast::Name) -> Option
|
|||
|
||||
Some(NameClass::Definition(name_ref_class.definition()))
|
||||
},
|
||||
ast::BindPat(it) => {
|
||||
ast::IdentPat(it) => {
|
||||
let local = sema.to_def(&it)?;
|
||||
|
||||
if let Some(record_field_pat) = it.syntax().parent().and_then(ast::RecordFieldPat::cast) {
|
||||
if let Some(record_field_pat) = it.syntax().parent().and_then(ast::RecordPatField::cast) {
|
||||
if record_field_pat.name_ref().is_none() {
|
||||
if let Some(field) = sema.resolve_record_field_pat(&record_field_pat) {
|
||||
let field = Definition::Field(field);
|
||||
|
@ -247,7 +247,7 @@ pub fn classify_name_ref(
|
|||
}
|
||||
}
|
||||
|
||||
if let Some(record_field_pat) = ast::RecordFieldPat::cast(parent.clone()) {
|
||||
if let Some(record_field_pat) = ast::RecordPatField::cast(parent.clone()) {
|
||||
if let Some(field) = sema.resolve_record_field_pat(&record_field_pat) {
|
||||
let field = Definition::Field(field);
|
||||
return Some(NameRefClass::Definition(field));
|
||||
|
|
|
@ -625,7 +625,7 @@ fn test_tt_to_stmts() {
|
|||
r#"MACRO_STMTS@0..15
|
||||
LET_STMT@0..7
|
||||
LET_KW@0..3 "let"
|
||||
BIND_PAT@3..4
|
||||
IDENT_PAT@3..4
|
||||
NAME@3..4
|
||||
IDENT@3..4 "a"
|
||||
EQ@4..5 "="
|
||||
|
@ -1116,7 +1116,7 @@ fn test_vec() {
|
|||
L_CURLY@0..1 "{"
|
||||
LET_STMT@1..20
|
||||
LET_KW@1..4 "let"
|
||||
BIND_PAT@4..8
|
||||
IDENT_PAT@4..8
|
||||
MUT_KW@4..7 "mut"
|
||||
NAME@7..8
|
||||
IDENT@7..8 "v"
|
||||
|
|
|
@ -217,7 +217,7 @@ fn record_field_pat_list(p: &mut Parser) {
|
|||
bind_pat(p, false);
|
||||
}
|
||||
}
|
||||
m.complete(p, RECORD_FIELD_PAT);
|
||||
m.complete(p, RECORD_PAT_FIELD);
|
||||
}
|
||||
}
|
||||
if !p.at(T!['}']) {
|
||||
|
@ -225,7 +225,7 @@ fn record_field_pat_list(p: &mut Parser) {
|
|||
}
|
||||
}
|
||||
p.expect(T!['}']);
|
||||
m.complete(p, RECORD_FIELD_PAT_LIST);
|
||||
m.complete(p, RECORD_PAT_FIELD_LIST);
|
||||
}
|
||||
|
||||
// test placeholder_pat
|
||||
|
@ -234,7 +234,7 @@ fn placeholder_pat(p: &mut Parser) -> CompletedMarker {
|
|||
assert!(p.at(T![_]));
|
||||
let m = p.start();
|
||||
p.bump(T![_]);
|
||||
m.complete(p, PLACEHOLDER_PAT)
|
||||
m.complete(p, WILDCARD_PAT)
|
||||
}
|
||||
|
||||
// test dot_dot_pat
|
||||
|
@ -361,7 +361,7 @@ fn bind_pat(p: &mut Parser, with_at: bool) -> CompletedMarker {
|
|||
if with_at && p.eat(T![@]) {
|
||||
pattern_single(p);
|
||||
}
|
||||
m.complete(p, BIND_PAT)
|
||||
m.complete(p, IDENT_PAT)
|
||||
}
|
||||
|
||||
// test box_pat
|
||||
|
|
|
@ -156,13 +156,13 @@ pub enum SyntaxKind {
|
|||
PAREN_PAT,
|
||||
REF_PAT,
|
||||
BOX_PAT,
|
||||
BIND_PAT,
|
||||
PLACEHOLDER_PAT,
|
||||
IDENT_PAT,
|
||||
WILDCARD_PAT,
|
||||
DOT_DOT_PAT,
|
||||
PATH_PAT,
|
||||
RECORD_PAT,
|
||||
RECORD_FIELD_PAT_LIST,
|
||||
RECORD_FIELD_PAT,
|
||||
RECORD_PAT_FIELD_LIST,
|
||||
RECORD_PAT_FIELD,
|
||||
TUPLE_STRUCT_PAT,
|
||||
TUPLE_PAT,
|
||||
SLICE_PAT,
|
||||
|
|
|
@ -109,7 +109,7 @@ impl RuleBuilder {
|
|||
// path refers to semantically the same thing, whereas the non-path-based rules could match
|
||||
// anything. Specifically, if we have a rule like `foo ==>> bar` we only want to match the
|
||||
// `foo` that is in the current scope, not any `foo`. However "foo" can be parsed as a
|
||||
// pattern (BIND_PAT -> NAME -> IDENT). Allowing such a rule through would result in
|
||||
// pattern (IDENT_PAT -> NAME -> IDENT). Allowing such a rule through would result in
|
||||
// renaming everything called `foo` to `bar`. It'd also be slow, since without a path, we'd
|
||||
// have to use the slow-scan search mechanism.
|
||||
if self.rules.iter().any(|rule| contains_path(&rule.pattern)) {
|
||||
|
|
|
@ -198,7 +198,7 @@ fn pick_node_for_resolution(node: SyntaxNode) -> SyntaxNode {
|
|||
return n;
|
||||
}
|
||||
}
|
||||
SyntaxKind::LET_STMT | SyntaxKind::BIND_PAT => {
|
||||
SyntaxKind::LET_STMT | SyntaxKind::IDENT_PAT => {
|
||||
if let Some(next) = node.next_sibling() {
|
||||
return pick_node_for_resolution(next);
|
||||
}
|
||||
|
|
|
@ -924,7 +924,7 @@ fn ufcs_matches_method_call() {
|
|||
fn pattern_is_a_single_segment_path() {
|
||||
mark::check!(pattern_is_a_single_segment_path);
|
||||
// The first function should not be altered because the `foo` in scope at the cursor position is
|
||||
// a different `foo`. This case is special because "foo" can be parsed as a pattern (BIND_PAT ->
|
||||
// a different `foo`. This case is special because "foo" can be parsed as a pattern (IDENT_PAT ->
|
||||
// NAME -> IDENT), which contains no path. If we're not careful we'll end up matching the `foo`
|
||||
// in `let foo` from the first function. Whether we should match the `let foo` in the second
|
||||
// function is less clear. At the moment, we don't. Doing so sounds like a rename operation,
|
||||
|
|
|
@ -390,7 +390,7 @@ impl ast::MatchArmList {
|
|||
#[must_use]
|
||||
pub fn remove_placeholder(&self) -> ast::MatchArmList {
|
||||
let placeholder =
|
||||
self.arms().find(|arm| matches!(arm.pat(), Some(ast::Pat::PlaceholderPat(_))));
|
||||
self.arms().find(|arm| matches!(arm.pat(), Some(ast::Pat::WildcardPat(_))));
|
||||
if let Some(placeholder) = placeholder {
|
||||
self.remove_arm(&placeholder)
|
||||
} else {
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -148,18 +148,18 @@ pub fn condition(expr: ast::Expr, pattern: Option<ast::Pat>) -> ast::Condition {
|
|||
}
|
||||
}
|
||||
|
||||
pub fn bind_pat(name: ast::Name) -> ast::BindPat {
|
||||
pub fn bind_pat(name: ast::Name) -> ast::IdentPat {
|
||||
return from_text(name.text());
|
||||
|
||||
fn from_text(text: &str) -> ast::BindPat {
|
||||
fn from_text(text: &str) -> ast::IdentPat {
|
||||
ast_from_text(&format!("fn f({}: ())", text))
|
||||
}
|
||||
}
|
||||
|
||||
pub fn placeholder_pat() -> ast::PlaceholderPat {
|
||||
pub fn placeholder_pat() -> ast::WildcardPat {
|
||||
return from_text("_");
|
||||
|
||||
fn from_text(text: &str) -> ast::PlaceholderPat {
|
||||
fn from_text(text: &str) -> ast::WildcardPat {
|
||||
ast_from_text(&format!("fn f({}: ())", text))
|
||||
}
|
||||
}
|
||||
|
|
|
@ -227,13 +227,13 @@ impl fmt::Display for NameOrNameRef {
|
|||
}
|
||||
}
|
||||
|
||||
impl ast::RecordFieldPat {
|
||||
impl ast::RecordPatField {
|
||||
/// Deals with field init shorthand
|
||||
pub fn field_name(&self) -> Option<NameOrNameRef> {
|
||||
if let Some(name_ref) = self.name_ref() {
|
||||
return Some(NameOrNameRef::NameRef(name_ref));
|
||||
}
|
||||
if let Some(ast::Pat::BindPat(pat)) = self.pat() {
|
||||
if let Some(ast::Pat::IdentPat(pat)) = self.pat() {
|
||||
let name = pat.name()?;
|
||||
return Some(NameOrNameRef::Name(name));
|
||||
}
|
||||
|
@ -294,13 +294,13 @@ impl ast::SlicePat {
|
|||
let prefix = args
|
||||
.peeking_take_while(|p| match p {
|
||||
ast::Pat::DotDotPat(_) => false,
|
||||
ast::Pat::BindPat(bp) => match bp.pat() {
|
||||
ast::Pat::IdentPat(bp) => match bp.pat() {
|
||||
Some(ast::Pat::DotDotPat(_)) => false,
|
||||
_ => true,
|
||||
},
|
||||
ast::Pat::RefPat(rp) => match rp.pat() {
|
||||
Some(ast::Pat::DotDotPat(_)) => false,
|
||||
Some(ast::Pat::BindPat(bp)) => match bp.pat() {
|
||||
Some(ast::Pat::IdentPat(bp)) => match bp.pat() {
|
||||
Some(ast::Pat::DotDotPat(_)) => false,
|
||||
_ => true,
|
||||
},
|
||||
|
|
|
@ -34,7 +34,7 @@ SOURCE_FILE@0..389
|
|||
PARAM_LIST@38..93
|
||||
L_PAREN@38..39
|
||||
PARAM@39..54
|
||||
BIND_PAT@39..46
|
||||
IDENT_PAT@39..46
|
||||
NAME@39..46
|
||||
IDENT@39..46 "builder"
|
||||
COLON@46..47
|
||||
|
@ -51,7 +51,7 @@ SOURCE_FILE@0..389
|
|||
COMMA@54..55
|
||||
WHITESPACE@55..56
|
||||
PARAM@56..72
|
||||
BIND_PAT@56..62
|
||||
IDENT_PAT@56..62
|
||||
NAME@56..62
|
||||
IDENT@56..62 "tokens"
|
||||
COLON@62..63
|
||||
|
@ -69,7 +69,7 @@ SOURCE_FILE@0..389
|
|||
COMMA@72..73
|
||||
WHITESPACE@73..74
|
||||
PARAM@74..92
|
||||
BIND_PAT@74..80
|
||||
IDENT_PAT@74..80
|
||||
NAME@74..80
|
||||
IDENT@74..80 "events"
|
||||
COLON@80..81
|
||||
|
@ -96,7 +96,7 @@ SOURCE_FILE@0..389
|
|||
LET_STMT@100..125
|
||||
LET_KW@100..103
|
||||
WHITESPACE@103..104
|
||||
BIND_PAT@104..120
|
||||
IDENT_PAT@104..120
|
||||
MUT_KW@104..107
|
||||
WHITESPACE@107..108
|
||||
NAME@108..120
|
||||
|
@ -111,7 +111,7 @@ SOURCE_FILE@0..389
|
|||
LET_STMT@130..389
|
||||
LET_KW@130..133
|
||||
WHITESPACE@133..134
|
||||
BIND_PAT@134..140
|
||||
IDENT_PAT@134..140
|
||||
NAME@134..140
|
||||
IDENT@134..140 "eat_ws"
|
||||
WHITESPACE@140..141
|
||||
|
@ -121,7 +121,7 @@ SOURCE_FILE@0..389
|
|||
PARAM_LIST@143..388
|
||||
PIPE@143..144
|
||||
PARAM@144..159
|
||||
BIND_PAT@144..147
|
||||
IDENT_PAT@144..147
|
||||
NAME@144..147
|
||||
IDENT@144..147 "idx"
|
||||
COLON@147..148
|
||||
|
@ -172,7 +172,7 @@ SOURCE_FILE@0..389
|
|||
NAME_REF@188..192
|
||||
IDENT@188..192 "Some"
|
||||
L_PAREN@192..193
|
||||
BIND_PAT@193..198
|
||||
IDENT_PAT@193..198
|
||||
NAME@193..198
|
||||
IDENT@193..198 "token"
|
||||
R_PAREN@198..199
|
||||
|
@ -185,7 +185,7 @@ SOURCE_FILE@0..389
|
|||
err: `expected COMMA`
|
||||
WHITESPACE@201..202
|
||||
PARAM@202..208
|
||||
BIND_PAT@202..208
|
||||
IDENT_PAT@202..208
|
||||
NAME@202..208
|
||||
IDENT@202..208 "tokens"
|
||||
err: `expected COMMA`
|
||||
|
@ -205,7 +205,7 @@ SOURCE_FILE@0..389
|
|||
ERROR@213..214
|
||||
STAR@213..214
|
||||
err: `expected COMMA`
|
||||
BIND_PAT@214..217
|
||||
IDENT_PAT@214..217
|
||||
NAME@214..217
|
||||
IDENT@214..217 "idx"
|
||||
R_PAREN@217..218
|
||||
|
@ -229,7 +229,7 @@ SOURCE_FILE@0..389
|
|||
BANG@236..237
|
||||
err: `expected COMMA`
|
||||
PARAM@237..242
|
||||
BIND_PAT@237..242
|
||||
IDENT_PAT@237..242
|
||||
NAME@237..242
|
||||
IDENT@237..242 "token"
|
||||
err: `expected COMMA`
|
||||
|
@ -239,7 +239,7 @@ SOURCE_FILE@0..389
|
|||
DOT@242..243
|
||||
err: `expected COMMA`
|
||||
PARAM@243..247
|
||||
BIND_PAT@243..247
|
||||
IDENT_PAT@243..247
|
||||
NAME@243..247
|
||||
IDENT@243..247 "kind"
|
||||
err: `expected COMMA`
|
||||
|
@ -265,7 +265,7 @@ SOURCE_FILE@0..389
|
|||
err: `expected COMMA`
|
||||
WHITESPACE@261..278
|
||||
PARAM@278..283
|
||||
BIND_PAT@278..283
|
||||
IDENT_PAT@278..283
|
||||
NAME@278..283
|
||||
IDENT@278..283 "break"
|
||||
err: `expected COMMA`
|
||||
|
@ -282,7 +282,7 @@ SOURCE_FILE@0..389
|
|||
err: `expected COMMA`
|
||||
WHITESPACE@298..311
|
||||
PARAM@311..318
|
||||
BIND_PAT@311..318
|
||||
IDENT_PAT@311..318
|
||||
NAME@311..318
|
||||
IDENT@311..318 "builder"
|
||||
err: `expected COMMA`
|
||||
|
@ -298,7 +298,7 @@ SOURCE_FILE@0..389
|
|||
NAME_REF@319..323
|
||||
IDENT@319..323 "leaf"
|
||||
L_PAREN@323..324
|
||||
BIND_PAT@324..329
|
||||
IDENT_PAT@324..329
|
||||
NAME@324..329
|
||||
IDENT@324..329 "token"
|
||||
err: `expected COMMA`
|
||||
|
@ -306,12 +306,12 @@ SOURCE_FILE@0..389
|
|||
ERROR@329..330
|
||||
DOT@329..330
|
||||
err: `expected COMMA`
|
||||
BIND_PAT@330..334
|
||||
IDENT_PAT@330..334
|
||||
NAME@330..334
|
||||
IDENT@330..334 "kind"
|
||||
COMMA@334..335
|
||||
WHITESPACE@335..336
|
||||
BIND_PAT@336..341
|
||||
IDENT_PAT@336..341
|
||||
NAME@336..341
|
||||
IDENT@336..341 "token"
|
||||
err: `expected COMMA`
|
||||
|
@ -319,7 +319,7 @@ SOURCE_FILE@0..389
|
|||
ERROR@341..342
|
||||
DOT@341..342
|
||||
err: `expected COMMA`
|
||||
BIND_PAT@342..345
|
||||
IDENT_PAT@342..345
|
||||
NAME@342..345
|
||||
IDENT@342..345 "len"
|
||||
R_PAREN@345..346
|
||||
|
@ -336,7 +336,7 @@ SOURCE_FILE@0..389
|
|||
STAR@360..361
|
||||
err: `expected COMMA`
|
||||
PARAM@361..364
|
||||
BIND_PAT@361..364
|
||||
IDENT_PAT@361..364
|
||||
NAME@361..364
|
||||
IDENT@361..364 "idx"
|
||||
err: `expected COMMA`
|
||||
|
|
|
@ -7,7 +7,7 @@ SOURCE_FILE@0..47
|
|||
PARAM_LIST@6..16
|
||||
L_PAREN@6..7 "("
|
||||
PARAM@7..15
|
||||
BIND_PAT@7..10
|
||||
IDENT_PAT@7..10
|
||||
NAME@7..10
|
||||
IDENT@7..10 "foo"
|
||||
COLON@10..11 ":"
|
||||
|
@ -25,7 +25,7 @@ SOURCE_FILE@0..47
|
|||
LET_STMT@23..36
|
||||
LET_KW@23..26 "let"
|
||||
WHITESPACE@26..27 " "
|
||||
BIND_PAT@27..30
|
||||
IDENT_PAT@27..30
|
||||
NAME@27..30
|
||||
IDENT@27..30 "bar"
|
||||
WHITESPACE@30..31 " "
|
||||
|
|
|
@ -38,7 +38,7 @@ SOURCE_FILE@0..183
|
|||
LET_STMT@57..85
|
||||
LET_KW@57..60 "let"
|
||||
WHITESPACE@60..61 " "
|
||||
BIND_PAT@61..64
|
||||
IDENT_PAT@61..64
|
||||
NAME@61..64
|
||||
IDENT@61..64 "res"
|
||||
WHITESPACE@64..65 " "
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..139
|
|||
LET_STMT@15..24
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
BIND_PAT@19..22
|
||||
IDENT_PAT@19..22
|
||||
NAME@19..22
|
||||
IDENT@19..22 "foo"
|
||||
WHITESPACE@22..23 " "
|
||||
|
@ -23,7 +23,7 @@ SOURCE_FILE@0..139
|
|||
LET_STMT@29..41
|
||||
LET_KW@29..32 "let"
|
||||
WHITESPACE@32..33 " "
|
||||
BIND_PAT@33..36
|
||||
IDENT_PAT@33..36
|
||||
NAME@33..36
|
||||
IDENT@33..36 "bar"
|
||||
WHITESPACE@36..37 " "
|
||||
|
@ -39,7 +39,7 @@ SOURCE_FILE@0..139
|
|||
LET_STMT@54..67
|
||||
LET_KW@54..57 "let"
|
||||
WHITESPACE@57..58 " "
|
||||
BIND_PAT@58..61
|
||||
IDENT_PAT@58..61
|
||||
NAME@58..61
|
||||
IDENT@58..61 "baz"
|
||||
WHITESPACE@61..62 " "
|
||||
|
|
|
@ -7,7 +7,7 @@ SOURCE_FILE@0..22
|
|||
PARAM_LIST@6..17
|
||||
L_PAREN@6..7 "("
|
||||
PARAM@7..13
|
||||
BIND_PAT@7..8
|
||||
IDENT_PAT@7..8
|
||||
NAME@7..8
|
||||
IDENT@7..8 "x"
|
||||
COLON@8..9 ":"
|
||||
|
@ -20,7 +20,7 @@ SOURCE_FILE@0..22
|
|||
COMMA@13..14 ","
|
||||
WHITESPACE@14..15 " "
|
||||
PARAM@15..16
|
||||
BIND_PAT@15..16
|
||||
IDENT_PAT@15..16
|
||||
NAME@15..16
|
||||
IDENT@15..16 "y"
|
||||
R_PAREN@16..17 ")"
|
||||
|
|
|
@ -80,7 +80,7 @@ SOURCE_FILE@0..240
|
|||
LET_STMT@71..121
|
||||
LET_KW@71..74 "let"
|
||||
WHITESPACE@74..75 " "
|
||||
PLACEHOLDER_PAT@75..76
|
||||
WILDCARD_PAT@75..76
|
||||
UNDERSCORE@75..76 "_"
|
||||
COLON@76..77 ":"
|
||||
WHITESPACE@77..78 " "
|
||||
|
@ -147,7 +147,7 @@ SOURCE_FILE@0..240
|
|||
LET_STMT@128..141
|
||||
LET_KW@128..131 "let"
|
||||
WHITESPACE@131..132 " "
|
||||
PLACEHOLDER_PAT@132..133
|
||||
WILDCARD_PAT@132..133
|
||||
UNDERSCORE@132..133 "_"
|
||||
COLON@133..134 ":"
|
||||
WHITESPACE@134..135 " "
|
||||
|
@ -223,7 +223,7 @@ SOURCE_FILE@0..240
|
|||
LET_STMT@185..235
|
||||
LET_KW@185..188 "let"
|
||||
WHITESPACE@188..189 " "
|
||||
PLACEHOLDER_PAT@189..190
|
||||
WILDCARD_PAT@189..190
|
||||
UNDERSCORE@189..190 "_"
|
||||
COLON@190..191 ":"
|
||||
WHITESPACE@191..192 " "
|
||||
|
|
|
@ -69,7 +69,7 @@ SOURCE_FILE@0..575
|
|||
LET_STMT@176..186
|
||||
LET_KW@176..179 "let"
|
||||
WHITESPACE@179..180 " "
|
||||
BIND_PAT@180..181
|
||||
IDENT_PAT@180..181
|
||||
NAME@180..181
|
||||
IDENT@180..181 "a"
|
||||
WHITESPACE@181..182 " "
|
||||
|
@ -175,7 +175,7 @@ SOURCE_FILE@0..575
|
|||
LET_STMT@491..510
|
||||
LET_KW@491..494 "let"
|
||||
WHITESPACE@494..495 " "
|
||||
BIND_PAT@495..505
|
||||
IDENT_PAT@495..505
|
||||
NAME@495..505
|
||||
IDENT@495..505 "bad_syntax"
|
||||
WHITESPACE@505..506 " "
|
||||
|
|
|
@ -7,7 +7,7 @@ SOURCE_FILE@0..24
|
|||
PARAM_LIST@6..12
|
||||
L_PAREN@6..7 "("
|
||||
PARAM@7..11
|
||||
BIND_PAT@7..8
|
||||
IDENT_PAT@7..8
|
||||
NAME@7..8
|
||||
IDENT@7..8 "a"
|
||||
COLON@8..9 ":"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..350
|
|||
LET_STMT@17..129
|
||||
LET_KW@17..20 "let"
|
||||
WHITESPACE@20..21 " "
|
||||
BIND_PAT@21..26
|
||||
IDENT_PAT@21..26
|
||||
NAME@21..26
|
||||
IDENT@21..26 "inner"
|
||||
WHITESPACE@26..27 " "
|
||||
|
|
|
@ -23,7 +23,7 @@ SOURCE_FILE@0..293
|
|||
L_CURLY@24..25 "{"
|
||||
WHITESPACE@25..34 "\n "
|
||||
MATCH_ARM@34..41
|
||||
PLACEHOLDER_PAT@34..35
|
||||
WILDCARD_PAT@34..35
|
||||
UNDERSCORE@34..35 "_"
|
||||
WHITESPACE@35..36 " "
|
||||
FAT_ARROW@36..38 "=>"
|
||||
|
@ -54,7 +54,7 @@ SOURCE_FILE@0..293
|
|||
R_BRACK@77..78 "]"
|
||||
WHITESPACE@78..87 "\n "
|
||||
MATCH_ARM@87..94
|
||||
PLACEHOLDER_PAT@87..88
|
||||
WILDCARD_PAT@87..88
|
||||
UNDERSCORE@87..88 "_"
|
||||
WHITESPACE@88..89 " "
|
||||
FAT_ARROW@89..91 "=>"
|
||||
|
@ -78,7 +78,7 @@ SOURCE_FILE@0..293
|
|||
L_CURLY@116..117 "{"
|
||||
WHITESPACE@117..126 "\n "
|
||||
MATCH_ARM@126..133
|
||||
PLACEHOLDER_PAT@126..127
|
||||
WILDCARD_PAT@126..127
|
||||
UNDERSCORE@126..127 "_"
|
||||
WHITESPACE@127..128 " "
|
||||
FAT_ARROW@128..130 "=>"
|
||||
|
@ -89,7 +89,7 @@ SOURCE_FILE@0..293
|
|||
COMMA@133..134 ","
|
||||
WHITESPACE@134..143 "\n "
|
||||
MATCH_ARM@143..150
|
||||
PLACEHOLDER_PAT@143..144
|
||||
WILDCARD_PAT@143..144
|
||||
UNDERSCORE@143..144 "_"
|
||||
WHITESPACE@144..145 " "
|
||||
FAT_ARROW@145..147 "=>"
|
||||
|
@ -165,7 +165,7 @@ SOURCE_FILE@0..293
|
|||
R_BRACK@249..250 "]"
|
||||
WHITESPACE@250..259 "\n "
|
||||
MATCH_ARM@259..266
|
||||
PLACEHOLDER_PAT@259..260
|
||||
WILDCARD_PAT@259..260
|
||||
UNDERSCORE@259..260 "_"
|
||||
WHITESPACE@260..261 " "
|
||||
FAT_ARROW@261..263 "=>"
|
||||
|
@ -176,7 +176,7 @@ SOURCE_FILE@0..293
|
|||
COMMA@266..267 ","
|
||||
WHITESPACE@267..276 "\n "
|
||||
MATCH_ARM@276..283
|
||||
PLACEHOLDER_PAT@276..277
|
||||
WILDCARD_PAT@276..277
|
||||
UNDERSCORE@276..277 "_"
|
||||
WHITESPACE@277..278 " "
|
||||
FAT_ARROW@278..280 "=>"
|
||||
|
|
|
@ -22,7 +22,7 @@ SOURCE_FILE@0..89
|
|||
L_CURLY@24..25 "{"
|
||||
WHITESPACE@25..34 "\n "
|
||||
MATCH_ARM@34..41
|
||||
PLACEHOLDER_PAT@34..35
|
||||
WILDCARD_PAT@34..35
|
||||
UNDERSCORE@34..35 "_"
|
||||
WHITESPACE@35..36 " "
|
||||
FAT_ARROW@36..38 "=>"
|
||||
|
@ -33,7 +33,7 @@ SOURCE_FILE@0..89
|
|||
COMMA@41..42 ","
|
||||
WHITESPACE@42..51 "\n "
|
||||
MATCH_ARM@51..58
|
||||
PLACEHOLDER_PAT@51..52
|
||||
WILDCARD_PAT@51..52
|
||||
UNDERSCORE@51..52 "_"
|
||||
WHITESPACE@52..53 " "
|
||||
FAT_ARROW@53..55 "=>"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..91
|
|||
LET_STMT@16..27
|
||||
LET_KW@16..19 "let"
|
||||
WHITESPACE@19..20 " "
|
||||
BIND_PAT@20..27
|
||||
IDENT_PAT@20..27
|
||||
REF_KW@20..23 "ref"
|
||||
WHITESPACE@23..24 " "
|
||||
ERROR@24..27
|
||||
|
@ -38,7 +38,7 @@ SOURCE_FILE@0..91
|
|||
LET_STMT@40..51
|
||||
LET_KW@40..43 "let"
|
||||
WHITESPACE@43..44 " "
|
||||
BIND_PAT@44..51
|
||||
IDENT_PAT@44..51
|
||||
MUT_KW@44..47 "mut"
|
||||
WHITESPACE@47..48 " "
|
||||
ERROR@48..51
|
||||
|
@ -62,7 +62,7 @@ SOURCE_FILE@0..91
|
|||
LET_STMT@64..79
|
||||
LET_KW@64..67 "let"
|
||||
WHITESPACE@67..68 " "
|
||||
BIND_PAT@68..79
|
||||
IDENT_PAT@68..79
|
||||
REF_KW@68..71 "ref"
|
||||
WHITESPACE@71..72 " "
|
||||
MUT_KW@72..75 "mut"
|
||||
|
|
|
@ -53,7 +53,7 @@ SOURCE_FILE@0..83
|
|||
PARAM_LIST@52..56
|
||||
PIPE@52..53 "|"
|
||||
PARAM@53..55
|
||||
BIND_PAT@53..55
|
||||
IDENT_PAT@53..55
|
||||
NAME@53..55
|
||||
IDENT@53..55 "it"
|
||||
PIPE@55..56 "|"
|
||||
|
|
|
@ -4,7 +4,7 @@ TUPLE_STRUCT_PAT@0..7
|
|||
NAME_REF@0..4
|
||||
IDENT@0..4 "Some"
|
||||
L_PAREN@4..5 "("
|
||||
BIND_PAT@5..6
|
||||
IDENT_PAT@5..6
|
||||
NAME@5..6
|
||||
IDENT@5..6 "x"
|
||||
R_PAREN@6..7 ")"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..30
|
|||
LET_STMT@11..27
|
||||
LET_KW@11..14 "let"
|
||||
WHITESPACE@14..15 " "
|
||||
PLACEHOLDER_PAT@15..16
|
||||
WILDCARD_PAT@15..16
|
||||
UNDERSCORE@15..16 "_"
|
||||
WHITESPACE@16..17 " "
|
||||
EQ@17..18 "="
|
||||
|
|
|
@ -79,7 +79,7 @@ SOURCE_FILE@0..128
|
|||
COMMA@91..92 ","
|
||||
WHITESPACE@92..93 " "
|
||||
PARAM@93..99
|
||||
BIND_PAT@93..94
|
||||
IDENT_PAT@93..94
|
||||
NAME@93..94
|
||||
IDENT@93..94 "x"
|
||||
COLON@94..95 ":"
|
||||
|
|
|
@ -58,7 +58,7 @@ SOURCE_FILE@0..103
|
|||
NAME_REF@62..65
|
||||
IDENT@62..65 "Bar"
|
||||
WHITESPACE@65..66 " "
|
||||
RECORD_FIELD_PAT_LIST@66..72
|
||||
RECORD_PAT_FIELD_LIST@66..72
|
||||
L_CURLY@66..67 "{"
|
||||
WHITESPACE@67..68 " "
|
||||
DOT2@68..70 ".."
|
||||
|
|
|
@ -16,12 +16,12 @@ SOURCE_FILE@0..39
|
|||
WHITESPACE@19..20 " "
|
||||
SLICE_PAT@20..30
|
||||
L_BRACK@20..21 "["
|
||||
BIND_PAT@21..22
|
||||
IDENT_PAT@21..22
|
||||
NAME@21..22
|
||||
IDENT@21..22 "a"
|
||||
COMMA@22..23 ","
|
||||
WHITESPACE@23..24 " "
|
||||
BIND_PAT@24..25
|
||||
IDENT_PAT@24..25
|
||||
NAME@24..25
|
||||
IDENT@24..25 "b"
|
||||
COMMA@25..26 ","
|
||||
|
|
|
@ -38,7 +38,7 @@ SOURCE_FILE@0..97
|
|||
NAME_REF@37..38
|
||||
IDENT@37..38 "S"
|
||||
L_PAREN@38..39 "("
|
||||
PLACEHOLDER_PAT@39..40
|
||||
WILDCARD_PAT@39..40
|
||||
UNDERSCORE@39..40 "_"
|
||||
R_PAREN@40..41 ")"
|
||||
WHITESPACE@41..42 " "
|
||||
|
@ -58,7 +58,7 @@ SOURCE_FILE@0..97
|
|||
NAME_REF@56..57
|
||||
IDENT@56..57 "S"
|
||||
L_PAREN@57..58 "("
|
||||
PLACEHOLDER_PAT@58..59
|
||||
WILDCARD_PAT@58..59
|
||||
UNDERSCORE@58..59 "_"
|
||||
COMMA@59..60 ","
|
||||
R_PAREN@60..61 ")"
|
||||
|
@ -79,7 +79,7 @@ SOURCE_FILE@0..97
|
|||
NAME_REF@76..77
|
||||
IDENT@76..77 "S"
|
||||
L_PAREN@77..78 "("
|
||||
PLACEHOLDER_PAT@78..79
|
||||
WILDCARD_PAT@78..79
|
||||
UNDERSCORE@78..79 "_"
|
||||
COMMA@79..80 ","
|
||||
WHITESPACE@80..81 " "
|
||||
|
@ -88,7 +88,7 @@ SOURCE_FILE@0..97
|
|||
WHITESPACE@83..84 " "
|
||||
COMMA@84..85 ","
|
||||
WHITESPACE@85..86 " "
|
||||
BIND_PAT@86..87
|
||||
IDENT_PAT@86..87
|
||||
NAME@86..87
|
||||
IDENT@86..87 "x"
|
||||
R_PAREN@87..88 ")"
|
||||
|
|
|
@ -16,7 +16,7 @@ SOURCE_FILE@0..52
|
|||
WHITESPACE@19..20 " "
|
||||
REF_PAT@20..22
|
||||
AMP@20..21 "&"
|
||||
BIND_PAT@21..22
|
||||
IDENT_PAT@21..22
|
||||
NAME@21..22
|
||||
IDENT@21..22 "a"
|
||||
WHITESPACE@22..23 " "
|
||||
|
@ -34,7 +34,7 @@ SOURCE_FILE@0..52
|
|||
AMP@37..38 "&"
|
||||
MUT_KW@38..41 "mut"
|
||||
WHITESPACE@41..42 " "
|
||||
BIND_PAT@42..43
|
||||
IDENT_PAT@42..43
|
||||
NAME@42..43
|
||||
IDENT@42..43 "b"
|
||||
WHITESPACE@43..44 " "
|
||||
|
|
|
@ -23,7 +23,7 @@ SOURCE_FILE@0..197
|
|||
NAME_REF@18..22
|
||||
IDENT@18..22 "Some"
|
||||
L_PAREN@22..23 "("
|
||||
PLACEHOLDER_PAT@23..24
|
||||
WILDCARD_PAT@23..24
|
||||
UNDERSCORE@23..24 "_"
|
||||
R_PAREN@24..25 ")"
|
||||
WHITESPACE@25..26 " "
|
||||
|
@ -67,7 +67,7 @@ SOURCE_FILE@0..197
|
|||
NAME_REF@60..64
|
||||
IDENT@60..64 "Some"
|
||||
L_PAREN@64..65 "("
|
||||
PLACEHOLDER_PAT@65..66
|
||||
WILDCARD_PAT@65..66
|
||||
UNDERSCORE@65..66 "_"
|
||||
R_PAREN@66..67 ")"
|
||||
WHITESPACE@67..68 " "
|
||||
|
@ -79,7 +79,7 @@ SOURCE_FILE@0..197
|
|||
NAME_REF@70..74
|
||||
IDENT@70..74 "Some"
|
||||
L_PAREN@74..75 "("
|
||||
PLACEHOLDER_PAT@75..76
|
||||
WILDCARD_PAT@75..76
|
||||
UNDERSCORE@75..76 "_"
|
||||
R_PAREN@76..77 ")"
|
||||
WHITESPACE@77..78 " "
|
||||
|
@ -110,7 +110,7 @@ SOURCE_FILE@0..197
|
|||
NAME_REF@101..105
|
||||
IDENT@101..105 "Some"
|
||||
L_PAREN@105..106 "("
|
||||
PLACEHOLDER_PAT@106..107
|
||||
WILDCARD_PAT@106..107
|
||||
UNDERSCORE@106..107 "_"
|
||||
R_PAREN@107..108 ")"
|
||||
WHITESPACE@108..109 " "
|
||||
|
@ -140,7 +140,7 @@ SOURCE_FILE@0..197
|
|||
NAME_REF@133..137
|
||||
IDENT@133..137 "Some"
|
||||
L_PAREN@137..138 "("
|
||||
PLACEHOLDER_PAT@138..139
|
||||
WILDCARD_PAT@138..139
|
||||
UNDERSCORE@138..139 "_"
|
||||
R_PAREN@139..140 ")"
|
||||
WHITESPACE@140..141 " "
|
||||
|
@ -152,7 +152,7 @@ SOURCE_FILE@0..197
|
|||
NAME_REF@143..147
|
||||
IDENT@143..147 "Some"
|
||||
L_PAREN@147..148 "("
|
||||
PLACEHOLDER_PAT@148..149
|
||||
WILDCARD_PAT@148..149
|
||||
UNDERSCORE@148..149 "_"
|
||||
R_PAREN@149..150 ")"
|
||||
WHITESPACE@150..151 " "
|
||||
|
@ -182,7 +182,7 @@ SOURCE_FILE@0..197
|
|||
NAME_REF@177..181
|
||||
IDENT@177..181 "Some"
|
||||
L_PAREN@181..182 "("
|
||||
PLACEHOLDER_PAT@182..183
|
||||
WILDCARD_PAT@182..183
|
||||
UNDERSCORE@182..183 "_"
|
||||
R_PAREN@183..184 ")"
|
||||
WHITESPACE@184..185 " "
|
||||
|
|
|
@ -37,7 +37,7 @@ SOURCE_FILE@0..93
|
|||
NAME_REF@44..48
|
||||
IDENT@44..48 "Some"
|
||||
L_PAREN@48..49 "("
|
||||
BIND_PAT@49..50
|
||||
IDENT_PAT@49..50
|
||||
NAME@49..50
|
||||
IDENT@49..50 "x"
|
||||
R_PAREN@50..51 ")"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..118
|
|||
LET_STMT@15..27
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
PLACEHOLDER_PAT@19..20
|
||||
WILDCARD_PAT@19..20
|
||||
UNDERSCORE@19..20 "_"
|
||||
WHITESPACE@20..21 " "
|
||||
EQ@21..22 "="
|
||||
|
@ -33,7 +33,7 @@ SOURCE_FILE@0..118
|
|||
LET_STMT@32..54
|
||||
LET_KW@32..35 "let"
|
||||
WHITESPACE@35..36 " "
|
||||
PLACEHOLDER_PAT@36..37
|
||||
WILDCARD_PAT@36..37
|
||||
UNDERSCORE@36..37 "_"
|
||||
WHITESPACE@37..38 " "
|
||||
EQ@38..39 "="
|
||||
|
@ -69,7 +69,7 @@ SOURCE_FILE@0..118
|
|||
LET_STMT@59..84
|
||||
LET_KW@59..62 "let"
|
||||
WHITESPACE@62..63 " "
|
||||
PLACEHOLDER_PAT@63..64
|
||||
WILDCARD_PAT@63..64
|
||||
UNDERSCORE@63..64 "_"
|
||||
WHITESPACE@64..65 " "
|
||||
EQ@65..66 "="
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..91
|
|||
LET_STMT@15..25
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
PLACEHOLDER_PAT@19..20
|
||||
WILDCARD_PAT@19..20
|
||||
UNDERSCORE@19..20 "_"
|
||||
WHITESPACE@20..21 " "
|
||||
EQ@21..22 "="
|
||||
|
@ -29,7 +29,7 @@ SOURCE_FILE@0..91
|
|||
LET_STMT@30..43
|
||||
LET_KW@30..33 "let"
|
||||
WHITESPACE@33..34 " "
|
||||
PLACEHOLDER_PAT@34..35
|
||||
WILDCARD_PAT@34..35
|
||||
UNDERSCORE@34..35 "_"
|
||||
WHITESPACE@35..36 " "
|
||||
EQ@36..37 "="
|
||||
|
@ -49,7 +49,7 @@ SOURCE_FILE@0..91
|
|||
LET_STMT@48..65
|
||||
LET_KW@48..51 "let"
|
||||
WHITESPACE@51..52 " "
|
||||
PLACEHOLDER_PAT@52..53
|
||||
WILDCARD_PAT@52..53
|
||||
UNDERSCORE@52..53 "_"
|
||||
WHITESPACE@53..54 " "
|
||||
EQ@54..55 "="
|
||||
|
@ -75,7 +75,7 @@ SOURCE_FILE@0..91
|
|||
LET_STMT@70..88
|
||||
LET_KW@70..73 "let"
|
||||
WHITESPACE@73..74 " "
|
||||
PLACEHOLDER_PAT@74..75
|
||||
WILDCARD_PAT@74..75
|
||||
UNDERSCORE@74..75 "_"
|
||||
WHITESPACE@75..76 " "
|
||||
EQ@76..77 "="
|
||||
|
|
|
@ -22,7 +22,7 @@ SOURCE_FILE@0..83
|
|||
L_CURLY@24..25 "{"
|
||||
WHITESPACE@25..34 "\n "
|
||||
MATCH_ARM@34..41
|
||||
PLACEHOLDER_PAT@34..35
|
||||
WILDCARD_PAT@34..35
|
||||
UNDERSCORE@34..35 "_"
|
||||
WHITESPACE@35..36 " "
|
||||
FAT_ARROW@36..38 "=>"
|
||||
|
@ -33,7 +33,7 @@ SOURCE_FILE@0..83
|
|||
COMMA@41..42 ","
|
||||
WHITESPACE@42..51 "\n "
|
||||
MATCH_ARM@51..58
|
||||
PLACEHOLDER_PAT@51..52
|
||||
WILDCARD_PAT@51..52
|
||||
UNDERSCORE@51..52 "_"
|
||||
WHITESPACE@52..53 " "
|
||||
FAT_ARROW@53..55 "=>"
|
||||
|
@ -43,7 +43,7 @@ SOURCE_FILE@0..83
|
|||
R_CURLY@57..58 "}"
|
||||
WHITESPACE@58..67 "\n "
|
||||
MATCH_ARM@67..74
|
||||
PLACEHOLDER_PAT@67..68
|
||||
WILDCARD_PAT@67..68
|
||||
UNDERSCORE@67..68 "_"
|
||||
WHITESPACE@68..69 " "
|
||||
FAT_ARROW@69..71 "=>"
|
||||
|
|
|
@ -23,7 +23,7 @@ SOURCE_FILE@0..167
|
|||
L_CURLY@24..25 "{"
|
||||
WHITESPACE@25..34 "\n "
|
||||
MATCH_ARM@34..41
|
||||
PLACEHOLDER_PAT@34..35
|
||||
WILDCARD_PAT@34..35
|
||||
UNDERSCORE@34..35 "_"
|
||||
WHITESPACE@35..36 " "
|
||||
FAT_ARROW@36..38 "=>"
|
||||
|
@ -34,7 +34,7 @@ SOURCE_FILE@0..167
|
|||
COMMA@41..42 ","
|
||||
WHITESPACE@42..51 "\n "
|
||||
MATCH_ARM@51..83
|
||||
PLACEHOLDER_PAT@51..52
|
||||
WILDCARD_PAT@51..52
|
||||
UNDERSCORE@51..52 "_"
|
||||
WHITESPACE@52..53 " "
|
||||
MATCH_GUARD@53..77
|
||||
|
@ -74,13 +74,13 @@ SOURCE_FILE@0..167
|
|||
WHITESPACE@84..93 "\n "
|
||||
MATCH_ARM@93..109
|
||||
OR_PAT@93..98
|
||||
BIND_PAT@93..94
|
||||
IDENT_PAT@93..94
|
||||
NAME@93..94
|
||||
IDENT@93..94 "X"
|
||||
WHITESPACE@94..95 " "
|
||||
PIPE@95..96 "|"
|
||||
WHITESPACE@96..97 " "
|
||||
BIND_PAT@97..98
|
||||
IDENT_PAT@97..98
|
||||
NAME@97..98
|
||||
IDENT@97..98 "Y"
|
||||
WHITESPACE@98..99 " "
|
||||
|
@ -104,13 +104,13 @@ SOURCE_FILE@0..167
|
|||
PIPE@119..120 "|"
|
||||
WHITESPACE@120..121 " "
|
||||
OR_PAT@121..126
|
||||
BIND_PAT@121..122
|
||||
IDENT_PAT@121..122
|
||||
NAME@121..122
|
||||
IDENT@121..122 "X"
|
||||
WHITESPACE@122..123 " "
|
||||
PIPE@123..124 "|"
|
||||
WHITESPACE@124..125 " "
|
||||
BIND_PAT@125..126
|
||||
IDENT_PAT@125..126
|
||||
NAME@125..126
|
||||
IDENT@125..126 "Y"
|
||||
WHITESPACE@126..127 " "
|
||||
|
@ -133,7 +133,7 @@ SOURCE_FILE@0..167
|
|||
MATCH_ARM@147..156
|
||||
PIPE@147..148 "|"
|
||||
WHITESPACE@148..149 " "
|
||||
BIND_PAT@149..150
|
||||
IDENT_PAT@149..150
|
||||
NAME@149..150
|
||||
IDENT@149..150 "X"
|
||||
WHITESPACE@150..151 " "
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..46
|
|||
LET_STMT@15..31
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
PLACEHOLDER_PAT@19..20
|
||||
WILDCARD_PAT@19..20
|
||||
UNDERSCORE@19..20 "_"
|
||||
WHITESPACE@20..21 " "
|
||||
EQ@21..22 "="
|
||||
|
|
|
@ -53,7 +53,7 @@ SOURCE_FILE@0..97
|
|||
L_CURLY@59..60 "{"
|
||||
WHITESPACE@60..61 " "
|
||||
MATCH_ARM@61..68
|
||||
PLACEHOLDER_PAT@61..62
|
||||
WILDCARD_PAT@61..62
|
||||
UNDERSCORE@61..62 "_"
|
||||
WHITESPACE@62..63 " "
|
||||
FAT_ARROW@63..65 "=>"
|
||||
|
|
|
@ -22,7 +22,7 @@ SOURCE_FILE@0..84
|
|||
L_CURLY@24..25 "{"
|
||||
WHITESPACE@25..34 "\n "
|
||||
MATCH_ARM@34..41
|
||||
PLACEHOLDER_PAT@34..35
|
||||
WILDCARD_PAT@34..35
|
||||
UNDERSCORE@34..35 "_"
|
||||
WHITESPACE@35..36 " "
|
||||
FAT_ARROW@36..38 "=>"
|
||||
|
|
|
@ -27,7 +27,7 @@ SOURCE_FILE@0..65
|
|||
LET_STMT@19..29
|
||||
LET_KW@19..22 "let"
|
||||
WHITESPACE@22..23 " "
|
||||
PLACEHOLDER_PAT@23..24
|
||||
WILDCARD_PAT@23..24
|
||||
UNDERSCORE@23..24 "_"
|
||||
WHITESPACE@24..25 " "
|
||||
EQ@25..26 "="
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..89
|
|||
LET_STMT@15..27
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
BIND_PAT@19..20
|
||||
IDENT_PAT@19..20
|
||||
NAME@19..20
|
||||
IDENT@19..20 "x"
|
||||
WHITESPACE@20..21 " "
|
||||
|
@ -39,7 +39,7 @@ SOURCE_FILE@0..89
|
|||
L_CURLY@42..43 "{"
|
||||
WHITESPACE@43..44 " "
|
||||
MATCH_ARM@44..51
|
||||
PLACEHOLDER_PAT@44..45
|
||||
WILDCARD_PAT@44..45
|
||||
UNDERSCORE@44..45 "_"
|
||||
WHITESPACE@45..46 " "
|
||||
FAT_ARROW@46..48 "=>"
|
||||
|
@ -79,7 +79,7 @@ SOURCE_FILE@0..89
|
|||
L_CURLY@74..75 "{"
|
||||
WHITESPACE@75..76 " "
|
||||
MATCH_ARM@76..83
|
||||
PLACEHOLDER_PAT@76..77
|
||||
WILDCARD_PAT@76..77
|
||||
UNDERSCORE@76..77 "_"
|
||||
WHITESPACE@77..78 " "
|
||||
FAT_ARROW@78..80 "=>"
|
||||
|
|
|
@ -16,7 +16,7 @@ SOURCE_FILE@0..200
|
|||
LET_STMT@41..52
|
||||
LET_KW@41..44 "let"
|
||||
WHITESPACE@44..45 " "
|
||||
PLACEHOLDER_PAT@45..46
|
||||
WILDCARD_PAT@45..46
|
||||
UNDERSCORE@45..46 "_"
|
||||
WHITESPACE@46..47 " "
|
||||
EQ@47..48 "="
|
||||
|
@ -30,7 +30,7 @@ SOURCE_FILE@0..200
|
|||
LET_STMT@57..75
|
||||
LET_KW@57..60 "let"
|
||||
WHITESPACE@60..61 " "
|
||||
PLACEHOLDER_PAT@61..62
|
||||
WILDCARD_PAT@61..62
|
||||
UNDERSCORE@61..62 "_"
|
||||
WHITESPACE@62..63 " "
|
||||
EQ@63..64 "="
|
||||
|
@ -55,7 +55,7 @@ SOURCE_FILE@0..200
|
|||
LET_STMT@80..93
|
||||
LET_KW@80..83 "let"
|
||||
WHITESPACE@83..84 " "
|
||||
PLACEHOLDER_PAT@84..85
|
||||
WILDCARD_PAT@84..85
|
||||
UNDERSCORE@84..85 "_"
|
||||
WHITESPACE@85..86 " "
|
||||
EQ@86..87 "="
|
||||
|
@ -72,7 +72,7 @@ SOURCE_FILE@0..200
|
|||
LET_STMT@98..113
|
||||
LET_KW@98..101 "let"
|
||||
WHITESPACE@101..102 " "
|
||||
PLACEHOLDER_PAT@102..103
|
||||
WILDCARD_PAT@102..103
|
||||
UNDERSCORE@102..103 "_"
|
||||
WHITESPACE@103..104 " "
|
||||
EQ@104..105 "="
|
||||
|
@ -95,7 +95,7 @@ SOURCE_FILE@0..200
|
|||
LET_STMT@148..169
|
||||
LET_KW@148..151 "let"
|
||||
WHITESPACE@151..152 " "
|
||||
PLACEHOLDER_PAT@152..153
|
||||
WILDCARD_PAT@152..153
|
||||
UNDERSCORE@152..153 "_"
|
||||
WHITESPACE@153..154 " "
|
||||
EQ@154..155 "="
|
||||
|
@ -116,7 +116,7 @@ SOURCE_FILE@0..200
|
|||
LET_STMT@174..197
|
||||
LET_KW@174..177 "let"
|
||||
WHITESPACE@177..178 " "
|
||||
PLACEHOLDER_PAT@178..179
|
||||
WILDCARD_PAT@178..179
|
||||
UNDERSCORE@178..179 "_"
|
||||
WHITESPACE@179..180 " "
|
||||
EQ@180..181 "="
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@15..28
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
PLACEHOLDER_PAT@19..20
|
||||
WILDCARD_PAT@19..20
|
||||
UNDERSCORE@19..20 "_"
|
||||
WHITESPACE@20..21 " "
|
||||
EQ@21..22 "="
|
||||
|
@ -26,7 +26,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@33..47
|
||||
LET_KW@33..36 "let"
|
||||
WHITESPACE@36..37 " "
|
||||
PLACEHOLDER_PAT@37..38
|
||||
WILDCARD_PAT@37..38
|
||||
UNDERSCORE@37..38 "_"
|
||||
WHITESPACE@38..39 " "
|
||||
EQ@39..40 "="
|
||||
|
@ -38,7 +38,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@52..62
|
||||
LET_KW@52..55 "let"
|
||||
WHITESPACE@55..56 " "
|
||||
PLACEHOLDER_PAT@56..57
|
||||
WILDCARD_PAT@56..57
|
||||
UNDERSCORE@56..57 "_"
|
||||
WHITESPACE@57..58 " "
|
||||
EQ@58..59 "="
|
||||
|
@ -50,7 +50,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@67..79
|
||||
LET_KW@67..70 "let"
|
||||
WHITESPACE@70..71 " "
|
||||
PLACEHOLDER_PAT@71..72
|
||||
WILDCARD_PAT@71..72
|
||||
UNDERSCORE@71..72 "_"
|
||||
WHITESPACE@72..73 " "
|
||||
EQ@73..74 "="
|
||||
|
@ -62,7 +62,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@84..97
|
||||
LET_KW@84..87 "let"
|
||||
WHITESPACE@87..88 " "
|
||||
PLACEHOLDER_PAT@88..89
|
||||
WILDCARD_PAT@88..89
|
||||
UNDERSCORE@88..89 "_"
|
||||
WHITESPACE@89..90 " "
|
||||
EQ@90..91 "="
|
||||
|
@ -74,7 +74,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@102..114
|
||||
LET_KW@102..105 "let"
|
||||
WHITESPACE@105..106 " "
|
||||
PLACEHOLDER_PAT@106..107
|
||||
WILDCARD_PAT@106..107
|
||||
UNDERSCORE@106..107 "_"
|
||||
WHITESPACE@107..108 " "
|
||||
EQ@108..109 "="
|
||||
|
@ -86,7 +86,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@119..131
|
||||
LET_KW@119..122 "let"
|
||||
WHITESPACE@122..123 " "
|
||||
PLACEHOLDER_PAT@123..124
|
||||
WILDCARD_PAT@123..124
|
||||
UNDERSCORE@123..124 "_"
|
||||
WHITESPACE@124..125 " "
|
||||
EQ@125..126 "="
|
||||
|
@ -98,7 +98,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@136..149
|
||||
LET_KW@136..139 "let"
|
||||
WHITESPACE@139..140 " "
|
||||
PLACEHOLDER_PAT@140..141
|
||||
WILDCARD_PAT@140..141
|
||||
UNDERSCORE@140..141 "_"
|
||||
WHITESPACE@141..142 " "
|
||||
EQ@142..143 "="
|
||||
|
@ -110,7 +110,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@154..167
|
||||
LET_KW@154..157 "let"
|
||||
WHITESPACE@157..158 " "
|
||||
PLACEHOLDER_PAT@158..159
|
||||
WILDCARD_PAT@158..159
|
||||
UNDERSCORE@158..159 "_"
|
||||
WHITESPACE@159..160 " "
|
||||
EQ@160..161 "="
|
||||
|
@ -122,7 +122,7 @@ SOURCE_FILE@0..189
|
|||
LET_STMT@172..186
|
||||
LET_KW@172..175 "let"
|
||||
WHITESPACE@175..176 " "
|
||||
PLACEHOLDER_PAT@176..177
|
||||
WILDCARD_PAT@176..177
|
||||
UNDERSCORE@176..177 "_"
|
||||
WHITESPACE@177..178 " "
|
||||
EQ@178..179 "="
|
||||
|
|
|
@ -38,7 +38,7 @@ SOURCE_FILE@0..88
|
|||
FOR_EXPR@49..66
|
||||
FOR_KW@49..52 "for"
|
||||
WHITESPACE@52..53 " "
|
||||
BIND_PAT@53..54
|
||||
IDENT_PAT@53..54
|
||||
NAME@53..54
|
||||
IDENT@53..54 "i"
|
||||
WHITESPACE@54..55 " "
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..26
|
|||
LET_STMT@12..23
|
||||
LET_KW@12..15 "let"
|
||||
WHITESPACE@15..16 " "
|
||||
PLACEHOLDER_PAT@16..17
|
||||
WILDCARD_PAT@16..17
|
||||
UNDERSCORE@16..17 "_"
|
||||
WHITESPACE@17..18 " "
|
||||
EQ@18..19 "="
|
||||
|
|
|
@ -59,7 +59,7 @@ SOURCE_FILE@0..167
|
|||
FOR_EXPR@76..90
|
||||
FOR_KW@76..79 "for"
|
||||
WHITESPACE@79..80 " "
|
||||
PLACEHOLDER_PAT@80..81
|
||||
WILDCARD_PAT@80..81
|
||||
UNDERSCORE@80..81 "_"
|
||||
WHITESPACE@81..82 " "
|
||||
IN_KW@82..84 "in"
|
||||
|
|
|
@ -20,7 +20,7 @@ SOURCE_FILE@0..67
|
|||
PARAM_LIST@14..22
|
||||
L_PAREN@14..15 "("
|
||||
PARAM@15..21
|
||||
BIND_PAT@15..16
|
||||
IDENT_PAT@15..16
|
||||
NAME@15..16
|
||||
IDENT@15..16 "x"
|
||||
COLON@16..17 ":"
|
||||
|
@ -44,7 +44,7 @@ SOURCE_FILE@0..67
|
|||
PARAM_LIST@30..40
|
||||
L_PAREN@30..31 "("
|
||||
PARAM@31..37
|
||||
BIND_PAT@31..32
|
||||
IDENT_PAT@31..32
|
||||
NAME@31..32
|
||||
IDENT@31..32 "x"
|
||||
COLON@32..33 ":"
|
||||
|
@ -70,7 +70,7 @@ SOURCE_FILE@0..67
|
|||
PARAM_LIST@48..63
|
||||
L_PAREN@48..49 "("
|
||||
PARAM@49..55
|
||||
BIND_PAT@49..50
|
||||
IDENT_PAT@49..50
|
||||
NAME@49..50
|
||||
IDENT@49..50 "x"
|
||||
COLON@50..51 ":"
|
||||
|
@ -83,7 +83,7 @@ SOURCE_FILE@0..67
|
|||
COMMA@55..56 ","
|
||||
WHITESPACE@56..57 " "
|
||||
PARAM@57..62
|
||||
BIND_PAT@57..58
|
||||
IDENT_PAT@57..58
|
||||
NAME@57..58
|
||||
IDENT@57..58 "y"
|
||||
COLON@58..59 ":"
|
||||
|
|
|
@ -15,7 +15,7 @@ SOURCE_FILE@0..33
|
|||
FOR_EXPR@15..29
|
||||
FOR_KW@15..18 "for"
|
||||
WHITESPACE@18..19 " "
|
||||
BIND_PAT@19..20
|
||||
IDENT_PAT@19..20
|
||||
NAME@19..20
|
||||
IDENT@19..20 "x"
|
||||
WHITESPACE@20..21 " "
|
||||
|
|
|
@ -20,7 +20,7 @@ SOURCE_FILE@0..119
|
|||
NAME_REF@19..20
|
||||
IDENT@19..20 "S"
|
||||
WHITESPACE@20..21 " "
|
||||
RECORD_FIELD_PAT_LIST@21..23
|
||||
RECORD_PAT_FIELD_LIST@21..23
|
||||
L_CURLY@21..22 "{"
|
||||
R_CURLY@22..23 "}"
|
||||
WHITESPACE@23..24 " "
|
||||
|
@ -40,17 +40,17 @@ SOURCE_FILE@0..119
|
|||
NAME_REF@38..39
|
||||
IDENT@38..39 "S"
|
||||
WHITESPACE@39..40 " "
|
||||
RECORD_FIELD_PAT_LIST@40..56
|
||||
RECORD_PAT_FIELD_LIST@40..56
|
||||
L_CURLY@40..41 "{"
|
||||
WHITESPACE@41..42 " "
|
||||
RECORD_FIELD_PAT@42..43
|
||||
BIND_PAT@42..43
|
||||
RECORD_PAT_FIELD@42..43
|
||||
IDENT_PAT@42..43
|
||||
NAME@42..43
|
||||
IDENT@42..43 "f"
|
||||
COMMA@43..44 ","
|
||||
WHITESPACE@44..45 " "
|
||||
RECORD_FIELD_PAT@45..54
|
||||
BIND_PAT@45..54
|
||||
RECORD_PAT_FIELD@45..54
|
||||
IDENT_PAT@45..54
|
||||
REF_KW@45..48 "ref"
|
||||
WHITESPACE@48..49 " "
|
||||
MUT_KW@49..52 "mut"
|
||||
|
@ -76,15 +76,15 @@ SOURCE_FILE@0..119
|
|||
NAME_REF@71..72
|
||||
IDENT@71..72 "S"
|
||||
WHITESPACE@72..73 " "
|
||||
RECORD_FIELD_PAT_LIST@73..84
|
||||
RECORD_PAT_FIELD_LIST@73..84
|
||||
L_CURLY@73..74 "{"
|
||||
WHITESPACE@74..75 " "
|
||||
RECORD_FIELD_PAT@75..79
|
||||
RECORD_PAT_FIELD@75..79
|
||||
NAME_REF@75..76
|
||||
IDENT@75..76 "h"
|
||||
COLON@76..77 ":"
|
||||
WHITESPACE@77..78 " "
|
||||
PLACEHOLDER_PAT@78..79
|
||||
WILDCARD_PAT@78..79
|
||||
UNDERSCORE@78..79 "_"
|
||||
COMMA@79..80 ","
|
||||
WHITESPACE@80..81 " "
|
||||
|
@ -107,15 +107,15 @@ SOURCE_FILE@0..119
|
|||
NAME_REF@99..100
|
||||
IDENT@99..100 "S"
|
||||
WHITESPACE@100..101 " "
|
||||
RECORD_FIELD_PAT_LIST@101..110
|
||||
RECORD_PAT_FIELD_LIST@101..110
|
||||
L_CURLY@101..102 "{"
|
||||
WHITESPACE@102..103 " "
|
||||
RECORD_FIELD_PAT@103..107
|
||||
RECORD_PAT_FIELD@103..107
|
||||
NAME_REF@103..104
|
||||
IDENT@103..104 "h"
|
||||
COLON@104..105 ":"
|
||||
WHITESPACE@105..106 " "
|
||||
PLACEHOLDER_PAT@106..107
|
||||
WILDCARD_PAT@106..107
|
||||
UNDERSCORE@106..107 "_"
|
||||
COMMA@107..108 ","
|
||||
WHITESPACE@108..109 " "
|
||||
|
|
|
@ -51,7 +51,7 @@ SOURCE_FILE@0..134
|
|||
PARAM_LIST@48..51
|
||||
PIPE@48..49 "|"
|
||||
PARAM@49..50
|
||||
BIND_PAT@49..50
|
||||
IDENT_PAT@49..50
|
||||
NAME@49..50
|
||||
IDENT@49..50 "x"
|
||||
PIPE@50..51 "|"
|
||||
|
@ -70,7 +70,7 @@ SOURCE_FILE@0..134
|
|||
PARAM_LIST@64..73
|
||||
PIPE@64..65 "|"
|
||||
PARAM@65..71
|
||||
BIND_PAT@65..66
|
||||
IDENT_PAT@65..66
|
||||
NAME@65..66
|
||||
IDENT@65..66 "x"
|
||||
COLON@66..67 ":"
|
||||
|
|
|
@ -46,7 +46,7 @@ SOURCE_FILE@0..74
|
|||
WHITESPACE@56..57 " "
|
||||
FOR_KW@57..60 "for"
|
||||
WHITESPACE@60..61 " "
|
||||
BIND_PAT@61..62
|
||||
IDENT_PAT@61..62
|
||||
NAME@61..62
|
||||
IDENT@61..62 "x"
|
||||
WHITESPACE@62..63 " "
|
||||
|
|
|
@ -16,12 +16,12 @@ SOURCE_FILE@0..94
|
|||
WHITESPACE@19..20 " "
|
||||
TUPLE_PAT@20..30
|
||||
L_PAREN@20..21 "("
|
||||
BIND_PAT@21..22
|
||||
IDENT_PAT@21..22
|
||||
NAME@21..22
|
||||
IDENT@21..22 "a"
|
||||
COMMA@22..23 ","
|
||||
WHITESPACE@23..24 " "
|
||||
BIND_PAT@24..25
|
||||
IDENT_PAT@24..25
|
||||
NAME@24..25
|
||||
IDENT@24..25 "b"
|
||||
COMMA@25..26 ","
|
||||
|
@ -42,7 +42,7 @@ SOURCE_FILE@0..94
|
|||
WHITESPACE@44..45 " "
|
||||
TUPLE_PAT@45..49
|
||||
L_PAREN@45..46 "("
|
||||
BIND_PAT@46..47
|
||||
IDENT_PAT@46..47
|
||||
NAME@46..47
|
||||
IDENT@46..47 "a"
|
||||
COMMA@47..48 ","
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..146
|
|||
LET_STMT@16..27
|
||||
LET_KW@16..19 "let"
|
||||
WHITESPACE@19..20 " "
|
||||
BIND_PAT@20..21
|
||||
IDENT_PAT@20..21
|
||||
NAME@20..21
|
||||
IDENT@20..21 "a"
|
||||
WHITESPACE@21..22 " "
|
||||
|
@ -28,7 +28,7 @@ SOURCE_FILE@0..146
|
|||
LET_STMT@32..47
|
||||
LET_KW@32..35 "let"
|
||||
WHITESPACE@35..36 " "
|
||||
BIND_PAT@36..41
|
||||
IDENT_PAT@36..41
|
||||
MUT_KW@36..39 "mut"
|
||||
WHITESPACE@39..40 " "
|
||||
NAME@40..41
|
||||
|
@ -44,7 +44,7 @@ SOURCE_FILE@0..146
|
|||
LET_STMT@52..67
|
||||
LET_KW@52..55 "let"
|
||||
WHITESPACE@55..56 " "
|
||||
BIND_PAT@56..61
|
||||
IDENT_PAT@56..61
|
||||
REF_KW@56..59 "ref"
|
||||
WHITESPACE@59..60 " "
|
||||
NAME@60..61
|
||||
|
@ -60,7 +60,7 @@ SOURCE_FILE@0..146
|
|||
LET_STMT@72..91
|
||||
LET_KW@72..75 "let"
|
||||
WHITESPACE@75..76 " "
|
||||
BIND_PAT@76..85
|
||||
IDENT_PAT@76..85
|
||||
REF_KW@76..79 "ref"
|
||||
WHITESPACE@79..80 " "
|
||||
MUT_KW@80..83 "mut"
|
||||
|
@ -78,13 +78,13 @@ SOURCE_FILE@0..146
|
|||
LET_STMT@96..111
|
||||
LET_KW@96..99 "let"
|
||||
WHITESPACE@99..100 " "
|
||||
BIND_PAT@100..105
|
||||
IDENT_PAT@100..105
|
||||
NAME@100..101
|
||||
IDENT@100..101 "e"
|
||||
WHITESPACE@101..102 " "
|
||||
AT@102..103 "@"
|
||||
WHITESPACE@103..104 " "
|
||||
PLACEHOLDER_PAT@104..105
|
||||
WILDCARD_PAT@104..105
|
||||
UNDERSCORE@104..105 "_"
|
||||
WHITESPACE@105..106 " "
|
||||
EQ@106..107 "="
|
||||
|
@ -97,7 +97,7 @@ SOURCE_FILE@0..146
|
|||
LET_STMT@116..143
|
||||
LET_KW@116..119 "let"
|
||||
WHITESPACE@119..120 " "
|
||||
BIND_PAT@120..137
|
||||
IDENT_PAT@120..137
|
||||
REF_KW@120..123 "ref"
|
||||
WHITESPACE@123..124 " "
|
||||
MUT_KW@124..127 "mut"
|
||||
|
@ -107,13 +107,13 @@ SOURCE_FILE@0..146
|
|||
WHITESPACE@129..130 " "
|
||||
AT@130..131 "@"
|
||||
WHITESPACE@131..132 " "
|
||||
BIND_PAT@132..137
|
||||
IDENT_PAT@132..137
|
||||
NAME@132..133
|
||||
IDENT@132..133 "g"
|
||||
WHITESPACE@133..134 " "
|
||||
AT@134..135 "@"
|
||||
WHITESPACE@135..136 " "
|
||||
PLACEHOLDER_PAT@136..137
|
||||
WILDCARD_PAT@136..137
|
||||
UNDERSCORE@136..137 "_"
|
||||
WHITESPACE@137..138 " "
|
||||
EQ@138..139 "="
|
||||
|
|
|
@ -22,7 +22,7 @@ SOURCE_FILE@0..58
|
|||
L_CURLY@24..25 "{"
|
||||
WHITESPACE@25..34 "\n "
|
||||
MATCH_ARM@34..48
|
||||
PLACEHOLDER_PAT@34..35
|
||||
WILDCARD_PAT@34..35
|
||||
UNDERSCORE@34..35 "_"
|
||||
WHITESPACE@35..36 " "
|
||||
MATCH_GUARD@36..42
|
||||
|
|
|
@ -64,7 +64,7 @@ SOURCE_FILE@0..139
|
|||
R_BRACK@112..113 "]"
|
||||
WHITESPACE@113..122 "\n "
|
||||
MATCH_ARM@122..129
|
||||
PLACEHOLDER_PAT@122..123
|
||||
WILDCARD_PAT@122..123
|
||||
UNDERSCORE@122..123 "_"
|
||||
WHITESPACE@123..124 " "
|
||||
FAT_ARROW@124..126 "=>"
|
||||
|
|
|
@ -39,7 +39,7 @@ SOURCE_FILE@0..259
|
|||
R_PAREN@56..57 ")"
|
||||
R_BRACK@57..58 "]"
|
||||
WHITESPACE@58..67 "\n "
|
||||
PLACEHOLDER_PAT@67..68
|
||||
WILDCARD_PAT@67..68
|
||||
UNDERSCORE@67..68 "_"
|
||||
WHITESPACE@68..69 " "
|
||||
FAT_ARROW@69..71 "=>"
|
||||
|
@ -67,7 +67,7 @@ SOURCE_FILE@0..259
|
|||
R_PAREN@107..108 ")"
|
||||
R_BRACK@108..109 "]"
|
||||
WHITESPACE@109..118 "\n "
|
||||
PLACEHOLDER_PAT@118..119
|
||||
WILDCARD_PAT@118..119
|
||||
UNDERSCORE@118..119 "_"
|
||||
WHITESPACE@119..120 " "
|
||||
FAT_ARROW@120..122 "=>"
|
||||
|
@ -129,7 +129,7 @@ SOURCE_FILE@0..259
|
|||
R_PAREN@231..232 ")"
|
||||
R_BRACK@232..233 "]"
|
||||
WHITESPACE@233..242 "\n "
|
||||
PLACEHOLDER_PAT@242..243
|
||||
WILDCARD_PAT@242..243
|
||||
UNDERSCORE@242..243 "_"
|
||||
WHITESPACE@243..244 " "
|
||||
FAT_ARROW@244..246 "=>"
|
||||
|
|
|
@ -43,7 +43,7 @@ SOURCE_FILE@0..64
|
|||
PARAM_LIST@49..59
|
||||
L_PAREN@49..50 "("
|
||||
PARAM@50..58
|
||||
PLACEHOLDER_PAT@50..51
|
||||
WILDCARD_PAT@50..51
|
||||
UNDERSCORE@50..51 "_"
|
||||
COLON@51..52 ":"
|
||||
WHITESPACE@52..53 " "
|
||||
|
|
|
@ -16,7 +16,7 @@ SOURCE_FILE@0..57
|
|||
PARAM_LIST@22..46
|
||||
L_PAREN@22..23 "("
|
||||
PARAM@23..40
|
||||
BIND_PAT@23..29
|
||||
IDENT_PAT@23..29
|
||||
NAME@23..29
|
||||
IDENT@23..29 "format"
|
||||
COLON@29..30 ":"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..135
|
|||
LET_STMT@15..21
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
BIND_PAT@19..20
|
||||
IDENT_PAT@19..20
|
||||
NAME@19..20
|
||||
IDENT@19..20 "a"
|
||||
SEMICOLON@20..21 ";"
|
||||
|
@ -22,7 +22,7 @@ SOURCE_FILE@0..135
|
|||
LET_STMT@26..37
|
||||
LET_KW@26..29 "let"
|
||||
WHITESPACE@29..30 " "
|
||||
BIND_PAT@30..31
|
||||
IDENT_PAT@30..31
|
||||
NAME@30..31
|
||||
IDENT@30..31 "b"
|
||||
COLON@31..32 ":"
|
||||
|
@ -37,7 +37,7 @@ SOURCE_FILE@0..135
|
|||
LET_STMT@42..53
|
||||
LET_KW@42..45 "let"
|
||||
WHITESPACE@45..46 " "
|
||||
BIND_PAT@46..47
|
||||
IDENT_PAT@46..47
|
||||
NAME@46..47
|
||||
IDENT@46..47 "c"
|
||||
WHITESPACE@47..48 " "
|
||||
|
@ -50,7 +50,7 @@ SOURCE_FILE@0..135
|
|||
LET_STMT@58..74
|
||||
LET_KW@58..61 "let"
|
||||
WHITESPACE@61..62 " "
|
||||
BIND_PAT@62..63
|
||||
IDENT_PAT@62..63
|
||||
NAME@62..63
|
||||
IDENT@62..63 "d"
|
||||
COLON@63..64 ":"
|
||||
|
@ -70,7 +70,7 @@ SOURCE_FILE@0..135
|
|||
LET_STMT@79..88
|
||||
LET_KW@79..82 "let"
|
||||
WHITESPACE@82..83 " "
|
||||
BIND_PAT@83..84
|
||||
IDENT_PAT@83..84
|
||||
NAME@83..84
|
||||
IDENT@83..84 "e"
|
||||
COLON@84..85 ":"
|
||||
|
@ -82,7 +82,7 @@ SOURCE_FILE@0..135
|
|||
LET_STMT@93..107
|
||||
LET_KW@93..96 "let"
|
||||
WHITESPACE@96..97 " "
|
||||
PLACEHOLDER_PAT@97..98
|
||||
WILDCARD_PAT@97..98
|
||||
UNDERSCORE@97..98 "_"
|
||||
COLON@98..99 ":"
|
||||
WHITESPACE@99..100 " "
|
||||
|
@ -99,7 +99,7 @@ SOURCE_FILE@0..135
|
|||
LET_STMT@112..132
|
||||
LET_KW@112..115 "let"
|
||||
WHITESPACE@115..116 " "
|
||||
BIND_PAT@116..117
|
||||
IDENT_PAT@116..117
|
||||
NAME@116..117
|
||||
IDENT@116..117 "f"
|
||||
WHITESPACE@117..118 " "
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..33
|
|||
LET_STMT@15..30
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
PLACEHOLDER_PAT@19..20
|
||||
WILDCARD_PAT@19..20
|
||||
UNDERSCORE@19..20 "_"
|
||||
WHITESPACE@20..21 " "
|
||||
EQ@21..22 "="
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..106
|
|||
LET_STMT@15..32
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
BIND_PAT@19..20
|
||||
IDENT_PAT@19..20
|
||||
NAME@19..20
|
||||
IDENT@19..20 "x"
|
||||
WHITESPACE@20..21 " "
|
||||
|
@ -30,7 +30,7 @@ SOURCE_FILE@0..106
|
|||
LET_STMT@37..66
|
||||
LET_KW@37..40 "let"
|
||||
WHITESPACE@40..41 " "
|
||||
BIND_PAT@41..42
|
||||
IDENT_PAT@41..42
|
||||
NAME@41..42
|
||||
IDENT@41..42 "y"
|
||||
WHITESPACE@42..43 " "
|
||||
|
@ -56,7 +56,7 @@ SOURCE_FILE@0..106
|
|||
LET_STMT@71..103
|
||||
LET_KW@71..74 "let"
|
||||
WHITESPACE@74..75 " "
|
||||
BIND_PAT@75..76
|
||||
IDENT_PAT@75..76
|
||||
NAME@75..76
|
||||
IDENT@75..76 "z"
|
||||
WHITESPACE@76..77 " "
|
||||
|
|
|
@ -37,7 +37,7 @@ SOURCE_FILE@0..59
|
|||
PARAM_LIST@40..55
|
||||
L_PAREN@40..41 "("
|
||||
PARAM@41..54
|
||||
BIND_PAT@41..51
|
||||
IDENT_PAT@41..51
|
||||
NAME@41..51
|
||||
IDENT@41..51 "printables"
|
||||
COLON@51..52 ":"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..52
|
|||
LET_STMT@14..34
|
||||
LET_KW@14..17 "let"
|
||||
WHITESPACE@17..18 " "
|
||||
BIND_PAT@18..23
|
||||
IDENT_PAT@18..23
|
||||
MUT_KW@18..21 "mut"
|
||||
WHITESPACE@21..22 " "
|
||||
NAME@22..23
|
||||
|
|
|
@ -16,7 +16,7 @@ SOURCE_FILE@0..28
|
|||
R_BRACK@12..13 "]"
|
||||
WHITESPACE@13..14 " "
|
||||
PARAM@14..23
|
||||
BIND_PAT@14..17
|
||||
IDENT_PAT@14..17
|
||||
NAME@14..17
|
||||
IDENT@14..17 "pat"
|
||||
COLON@17..18 ":"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..51
|
|||
FOR_EXPR@14..48
|
||||
FOR_KW@14..17 "for"
|
||||
WHITESPACE@17..18 " "
|
||||
BIND_PAT@18..19
|
||||
IDENT_PAT@18..19
|
||||
NAME@18..19
|
||||
IDENT@18..19 "x"
|
||||
WHITESPACE@19..20 " "
|
||||
|
|
|
@ -17,7 +17,7 @@ SOURCE_FILE@0..118
|
|||
BOX_PAT@20..25
|
||||
BOX_KW@20..23 "box"
|
||||
WHITESPACE@23..24 " "
|
||||
BIND_PAT@24..25
|
||||
IDENT_PAT@24..25
|
||||
NAME@24..25
|
||||
IDENT@24..25 "i"
|
||||
WHITESPACE@25..26 " "
|
||||
|
@ -40,19 +40,19 @@ SOURCE_FILE@0..118
|
|||
NAME_REF@44..49
|
||||
IDENT@44..49 "Outer"
|
||||
WHITESPACE@49..50 " "
|
||||
RECORD_FIELD_PAT_LIST@50..81
|
||||
RECORD_PAT_FIELD_LIST@50..81
|
||||
L_CURLY@50..51 "{"
|
||||
WHITESPACE@51..52 " "
|
||||
RECORD_FIELD_PAT@52..57
|
||||
RECORD_PAT_FIELD@52..57
|
||||
BOX_PAT@52..57
|
||||
BOX_KW@52..55 "box"
|
||||
WHITESPACE@55..56 " "
|
||||
BIND_PAT@56..57
|
||||
IDENT_PAT@56..57
|
||||
NAME@56..57
|
||||
IDENT@56..57 "i"
|
||||
COMMA@57..58 ","
|
||||
WHITESPACE@58..59 " "
|
||||
RECORD_FIELD_PAT@59..79
|
||||
RECORD_PAT_FIELD@59..79
|
||||
NAME_REF@59..60
|
||||
IDENT@59..60 "j"
|
||||
COLON@60..61 ":"
|
||||
|
@ -71,7 +71,7 @@ SOURCE_FILE@0..118
|
|||
WHITESPACE@75..76 " "
|
||||
REF_PAT@76..78
|
||||
AMP@76..77 "&"
|
||||
BIND_PAT@77..78
|
||||
IDENT_PAT@77..78
|
||||
NAME@77..78
|
||||
IDENT@77..78 "x"
|
||||
R_PAREN@78..79 ")"
|
||||
|
@ -91,7 +91,7 @@ SOURCE_FILE@0..118
|
|||
BOX_PAT@96..109
|
||||
BOX_KW@96..99 "box"
|
||||
WHITESPACE@99..100 " "
|
||||
BIND_PAT@100..109
|
||||
IDENT_PAT@100..109
|
||||
REF_KW@100..103 "ref"
|
||||
WHITESPACE@103..104 " "
|
||||
MUT_KW@104..107 "mut"
|
||||
|
|
|
@ -35,7 +35,7 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@64..65 " "
|
||||
TUPLE_PAT@65..72
|
||||
L_PAREN@65..66 "("
|
||||
BIND_PAT@66..67
|
||||
IDENT_PAT@66..67
|
||||
NAME@66..67
|
||||
IDENT@66..67 "a"
|
||||
COMMA@67..68 ","
|
||||
|
@ -56,7 +56,7 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@86..87 " "
|
||||
TUPLE_PAT@87..95
|
||||
L_PAREN@87..88 "("
|
||||
BIND_PAT@88..89
|
||||
IDENT_PAT@88..89
|
||||
NAME@88..89
|
||||
IDENT@88..89 "a"
|
||||
COMMA@89..90 ","
|
||||
|
@ -82,7 +82,7 @@ SOURCE_FILE@0..555
|
|||
NAME_REF@110..115
|
||||
IDENT@110..115 "Tuple"
|
||||
L_PAREN@115..116 "("
|
||||
BIND_PAT@116..117
|
||||
IDENT_PAT@116..117
|
||||
NAME@116..117
|
||||
IDENT@116..117 "a"
|
||||
COMMA@117..118 ","
|
||||
|
@ -107,7 +107,7 @@ SOURCE_FILE@0..555
|
|||
NAME_REF@137..142
|
||||
IDENT@137..142 "Tuple"
|
||||
L_PAREN@142..143 "("
|
||||
BIND_PAT@143..144
|
||||
IDENT_PAT@143..144
|
||||
NAME@143..144
|
||||
IDENT@143..144 "a"
|
||||
COMMA@144..145 ","
|
||||
|
@ -177,7 +177,7 @@ SOURCE_FILE@0..555
|
|||
DOT2@217..219 ".."
|
||||
COMMA@219..220 ","
|
||||
WHITESPACE@220..221 " "
|
||||
BIND_PAT@221..222
|
||||
IDENT_PAT@221..222
|
||||
NAME@221..222
|
||||
IDENT@221..222 "a"
|
||||
COMMA@222..223 ","
|
||||
|
@ -206,7 +206,7 @@ SOURCE_FILE@0..555
|
|||
DOT2@248..250 ".."
|
||||
COMMA@250..251 ","
|
||||
WHITESPACE@251..252 " "
|
||||
BIND_PAT@252..253
|
||||
IDENT_PAT@252..253
|
||||
NAME@252..253
|
||||
IDENT@252..253 "a"
|
||||
COMMA@253..254 ","
|
||||
|
@ -249,7 +249,7 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@319..320 " "
|
||||
SLICE_PAT@320..330
|
||||
L_BRACK@320..321 "["
|
||||
BIND_PAT@321..325
|
||||
IDENT_PAT@321..325
|
||||
NAME@321..325
|
||||
IDENT@321..325 "head"
|
||||
COMMA@325..326 ","
|
||||
|
@ -270,12 +270,12 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@344..345 " "
|
||||
SLICE_PAT@345..362
|
||||
L_BRACK@345..346 "["
|
||||
BIND_PAT@346..350
|
||||
IDENT_PAT@346..350
|
||||
NAME@346..350
|
||||
IDENT@346..350 "head"
|
||||
COMMA@350..351 ","
|
||||
WHITESPACE@351..352 " "
|
||||
BIND_PAT@352..361
|
||||
IDENT_PAT@352..361
|
||||
NAME@352..356
|
||||
IDENT@352..356 "tail"
|
||||
WHITESPACE@356..357 " "
|
||||
|
@ -297,7 +297,7 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@376..377 " "
|
||||
SLICE_PAT@377..393
|
||||
L_BRACK@377..378 "["
|
||||
BIND_PAT@378..382
|
||||
IDENT_PAT@378..382
|
||||
NAME@378..382
|
||||
IDENT@378..382 "head"
|
||||
COMMA@382..383 ","
|
||||
|
@ -306,7 +306,7 @@ SOURCE_FILE@0..555
|
|||
DOT2@384..386 ".."
|
||||
COMMA@386..387 ","
|
||||
WHITESPACE@387..388 " "
|
||||
BIND_PAT@388..392
|
||||
IDENT_PAT@388..392
|
||||
NAME@388..392
|
||||
IDENT@388..392 "cons"
|
||||
R_BRACK@392..393 "]"
|
||||
|
@ -323,12 +323,12 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@407..408 " "
|
||||
SLICE_PAT@408..430
|
||||
L_BRACK@408..409 "["
|
||||
BIND_PAT@409..413
|
||||
IDENT_PAT@409..413
|
||||
NAME@409..413
|
||||
IDENT@409..413 "head"
|
||||
COMMA@413..414 ","
|
||||
WHITESPACE@414..415 " "
|
||||
BIND_PAT@415..423
|
||||
IDENT_PAT@415..423
|
||||
NAME@415..418
|
||||
IDENT@415..418 "mid"
|
||||
WHITESPACE@418..419 " "
|
||||
|
@ -338,7 +338,7 @@ SOURCE_FILE@0..555
|
|||
DOT2@421..423 ".."
|
||||
COMMA@423..424 ","
|
||||
WHITESPACE@424..425 " "
|
||||
BIND_PAT@425..429
|
||||
IDENT_PAT@425..429
|
||||
NAME@425..429
|
||||
IDENT@425..429 "cons"
|
||||
R_BRACK@429..430 "]"
|
||||
|
@ -355,7 +355,7 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@444..445 " "
|
||||
SLICE_PAT@445..465
|
||||
L_BRACK@445..446 "["
|
||||
BIND_PAT@446..450
|
||||
IDENT_PAT@446..450
|
||||
NAME@446..450
|
||||
IDENT@446..450 "head"
|
||||
COMMA@450..451 ","
|
||||
|
@ -368,7 +368,7 @@ SOURCE_FILE@0..555
|
|||
DOT2@456..458 ".."
|
||||
COMMA@458..459 ","
|
||||
WHITESPACE@459..460 " "
|
||||
BIND_PAT@460..464
|
||||
IDENT_PAT@460..464
|
||||
NAME@460..464
|
||||
IDENT@460..464 "cons"
|
||||
R_BRACK@464..465 "]"
|
||||
|
@ -385,7 +385,7 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@479..480 " "
|
||||
SLICE_PAT@480..506
|
||||
L_BRACK@480..481 "["
|
||||
BIND_PAT@481..485
|
||||
IDENT_PAT@481..485
|
||||
NAME@481..485
|
||||
IDENT@481..485 "head"
|
||||
COMMA@485..486 ","
|
||||
|
@ -394,12 +394,12 @@ SOURCE_FILE@0..555
|
|||
DOT2@487..489 ".."
|
||||
COMMA@489..490 ","
|
||||
WHITESPACE@490..491 " "
|
||||
BIND_PAT@491..494
|
||||
IDENT_PAT@491..494
|
||||
NAME@491..494
|
||||
IDENT@491..494 "mid"
|
||||
COMMA@494..495 ","
|
||||
WHITESPACE@495..496 " "
|
||||
BIND_PAT@496..505
|
||||
IDENT_PAT@496..505
|
||||
NAME@496..500
|
||||
IDENT@496..500 "tail"
|
||||
WHITESPACE@500..501 " "
|
||||
|
@ -421,7 +421,7 @@ SOURCE_FILE@0..555
|
|||
WHITESPACE@520..521 " "
|
||||
SLICE_PAT@521..546
|
||||
L_BRACK@521..522 "["
|
||||
BIND_PAT@522..526
|
||||
IDENT_PAT@522..526
|
||||
NAME@522..526
|
||||
IDENT@522..526 "head"
|
||||
COMMA@526..527 ","
|
||||
|
@ -430,7 +430,7 @@ SOURCE_FILE@0..555
|
|||
DOT2@528..530 ".."
|
||||
COMMA@530..531 ","
|
||||
WHITESPACE@531..532 " "
|
||||
BIND_PAT@532..535
|
||||
IDENT_PAT@532..535
|
||||
NAME@532..535
|
||||
IDENT@532..535 "mid"
|
||||
COMMA@535..536 ","
|
||||
|
@ -439,7 +439,7 @@ SOURCE_FILE@0..555
|
|||
DOT2@537..539 ".."
|
||||
COMMA@539..540 ","
|
||||
WHITESPACE@540..541 " "
|
||||
BIND_PAT@541..545
|
||||
IDENT_PAT@541..545
|
||||
NAME@541..545
|
||||
IDENT@541..545 "cons"
|
||||
R_BRACK@545..546 "]"
|
||||
|
|
|
@ -20,10 +20,10 @@ SOURCE_FILE@0..63
|
|||
NAME_REF@19..20
|
||||
IDENT@19..20 "S"
|
||||
WHITESPACE@20..21 " "
|
||||
RECORD_FIELD_PAT_LIST@21..29
|
||||
RECORD_PAT_FIELD_LIST@21..29
|
||||
L_CURLY@21..22 "{"
|
||||
WHITESPACE@22..23 " "
|
||||
RECORD_FIELD_PAT@23..27
|
||||
RECORD_PAT_FIELD@23..27
|
||||
NAME_REF@23..24
|
||||
INT_NUMBER@23..24 "0"
|
||||
COLON@24..25 ":"
|
||||
|
@ -50,10 +50,10 @@ SOURCE_FILE@0..63
|
|||
NAME_REF@44..45
|
||||
IDENT@44..45 "S"
|
||||
WHITESPACE@45..46 " "
|
||||
RECORD_FIELD_PAT_LIST@46..54
|
||||
RECORD_PAT_FIELD_LIST@46..54
|
||||
L_CURLY@46..47 "{"
|
||||
WHITESPACE@47..48 " "
|
||||
RECORD_FIELD_PAT@48..52
|
||||
RECORD_PAT_FIELD@48..52
|
||||
NAME_REF@48..49
|
||||
IDENT@48..49 "x"
|
||||
COLON@49..50 ":"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..43
|
|||
LET_STMT@15..40
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
PLACEHOLDER_PAT@19..20
|
||||
WILDCARD_PAT@19..20
|
||||
UNDERSCORE@19..20 "_"
|
||||
WHITESPACE@20..21 " "
|
||||
EQ@21..22 "="
|
||||
|
|
|
@ -38,7 +38,7 @@ SOURCE_FILE@0..55
|
|||
PARAM_LIST@38..53
|
||||
L_PAREN@38..39 "("
|
||||
PARAM@39..52
|
||||
BIND_PAT@39..42
|
||||
IDENT_PAT@39..42
|
||||
NAME@39..42
|
||||
IDENT@39..42 "baz"
|
||||
COLON@42..43 ":"
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..63
|
|||
LET_STMT@15..60
|
||||
LET_KW@15..18 "let"
|
||||
WHITESPACE@18..19 " "
|
||||
BIND_PAT@19..22
|
||||
IDENT_PAT@19..22
|
||||
NAME@19..22
|
||||
IDENT@19..22 "foo"
|
||||
WHITESPACE@22..23 " "
|
||||
|
@ -24,13 +24,13 @@ SOURCE_FILE@0..63
|
|||
PARAM_LIST@25..56
|
||||
PIPE@25..26 "|"
|
||||
PARAM@26..29
|
||||
BIND_PAT@26..29
|
||||
IDENT_PAT@26..29
|
||||
NAME@26..29
|
||||
IDENT@26..29 "bar"
|
||||
COMMA@29..30 ","
|
||||
WHITESPACE@30..31 " "
|
||||
PARAM@31..39
|
||||
BIND_PAT@31..34
|
||||
IDENT_PAT@31..34
|
||||
NAME@31..34
|
||||
IDENT@31..34 "baz"
|
||||
COLON@34..35 ":"
|
||||
|
@ -43,7 +43,7 @@ SOURCE_FILE@0..63
|
|||
COMMA@39..40 ","
|
||||
WHITESPACE@40..41 " "
|
||||
PARAM@41..55
|
||||
BIND_PAT@41..44
|
||||
IDENT_PAT@41..44
|
||||
NAME@41..44
|
||||
IDENT@41..44 "qux"
|
||||
COLON@44..45 ":"
|
||||
|
|
|
@ -9,12 +9,12 @@ SOURCE_FILE@0..30
|
|||
PARAM@7..25
|
||||
TUPLE_PAT@7..13
|
||||
L_PAREN@7..8 "("
|
||||
BIND_PAT@8..9
|
||||
IDENT_PAT@8..9
|
||||
NAME@8..9
|
||||
IDENT@8..9 "x"
|
||||
COMMA@9..10 ","
|
||||
WHITESPACE@10..11 " "
|
||||
BIND_PAT@11..12
|
||||
IDENT_PAT@11..12
|
||||
NAME@11..12
|
||||
IDENT@11..12 "y"
|
||||
R_PAREN@12..13 ")"
|
||||
|
|
|
@ -25,12 +25,12 @@ SOURCE_FILE@0..130
|
|||
PAREN_PAT@35..42
|
||||
L_PAREN@35..36 "("
|
||||
OR_PAT@36..41
|
||||
PLACEHOLDER_PAT@36..37
|
||||
WILDCARD_PAT@36..37
|
||||
UNDERSCORE@36..37 "_"
|
||||
WHITESPACE@37..38 " "
|
||||
PIPE@38..39 "|"
|
||||
WHITESPACE@39..40 " "
|
||||
PLACEHOLDER_PAT@40..41
|
||||
WILDCARD_PAT@40..41
|
||||
UNDERSCORE@40..41 "_"
|
||||
R_PAREN@41..42 ")"
|
||||
WHITESPACE@42..43 " "
|
||||
|
@ -47,12 +47,12 @@ SOURCE_FILE@0..130
|
|||
PAREN_PAT@59..66
|
||||
L_PAREN@59..60 "("
|
||||
OR_PAT@60..65
|
||||
PLACEHOLDER_PAT@60..61
|
||||
WILDCARD_PAT@60..61
|
||||
UNDERSCORE@60..61 "_"
|
||||
WHITESPACE@61..62 " "
|
||||
PIPE@62..63 "|"
|
||||
WHITESPACE@63..64 " "
|
||||
PLACEHOLDER_PAT@64..65
|
||||
WILDCARD_PAT@64..65
|
||||
UNDERSCORE@64..65 "_"
|
||||
R_PAREN@65..66 ")"
|
||||
WHITESPACE@66..67 " "
|
||||
|
@ -67,12 +67,12 @@ SOURCE_FILE@0..130
|
|||
TUPLE_PAT@82..90
|
||||
L_PAREN@82..83 "("
|
||||
OR_PAT@83..88
|
||||
PLACEHOLDER_PAT@83..84
|
||||
WILDCARD_PAT@83..84
|
||||
UNDERSCORE@83..84 "_"
|
||||
WHITESPACE@84..85 " "
|
||||
PIPE@85..86 "|"
|
||||
WHITESPACE@86..87 " "
|
||||
PLACEHOLDER_PAT@87..88
|
||||
WILDCARD_PAT@87..88
|
||||
UNDERSCORE@87..88 "_"
|
||||
COMMA@88..89 ","
|
||||
R_PAREN@89..90 ")"
|
||||
|
@ -88,12 +88,12 @@ SOURCE_FILE@0..130
|
|||
SLICE_PAT@106..114
|
||||
L_BRACK@106..107 "["
|
||||
OR_PAT@107..112
|
||||
PLACEHOLDER_PAT@107..108
|
||||
WILDCARD_PAT@107..108
|
||||
UNDERSCORE@107..108 "_"
|
||||
WHITESPACE@108..109 " "
|
||||
PIPE@109..110 "|"
|
||||
WHITESPACE@110..111 " "
|
||||
PLACEHOLDER_PAT@111..112
|
||||
WILDCARD_PAT@111..112
|
||||
UNDERSCORE@111..112 "_"
|
||||
COMMA@112..113 ","
|
||||
R_BRACK@113..114 "]"
|
||||
|
|
|
@ -12,7 +12,7 @@ SOURCE_FILE@0..23
|
|||
PARAM_LIST@13..21
|
||||
L_PAREN@13..14 "("
|
||||
PARAM@14..20
|
||||
PLACEHOLDER_PAT@14..15
|
||||
WILDCARD_PAT@14..15
|
||||
UNDERSCORE@14..15 "_"
|
||||
COLON@15..16 ":"
|
||||
WHITESPACE@16..17 " "
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..248
|
|||
LET_STMT@25..55
|
||||
LET_KW@25..28 "let"
|
||||
WHITESPACE@28..29 " "
|
||||
BIND_PAT@29..30
|
||||
IDENT_PAT@29..30
|
||||
NAME@29..30
|
||||
IDENT@29..30 "x"
|
||||
WHITESPACE@30..31 " "
|
||||
|
|
|
@ -67,7 +67,7 @@ SOURCE_FILE@0..153
|
|||
LET_STMT@64..76
|
||||
LET_KW@64..67 "let"
|
||||
WHITESPACE@67..68 " "
|
||||
BIND_PAT@68..69
|
||||
IDENT_PAT@68..69
|
||||
NAME@68..69
|
||||
IDENT@68..69 "x"
|
||||
WHITESPACE@69..70 " "
|
||||
|
@ -135,7 +135,7 @@ SOURCE_FILE@0..153
|
|||
LET_STMT@138..150
|
||||
LET_KW@138..141 "let"
|
||||
WHITESPACE@141..142 " "
|
||||
BIND_PAT@142..143
|
||||
IDENT_PAT@142..143
|
||||
NAME@142..143
|
||||
IDENT@142..143 "x"
|
||||
WHITESPACE@143..144 " "
|
||||
|
|
|
@ -14,7 +14,7 @@ SOURCE_FILE@0..112
|
|||
LET_STMT@16..31
|
||||
LET_KW@16..19 "let"
|
||||
WHITESPACE@19..20 " "
|
||||
PLACEHOLDER_PAT@20..21
|
||||
WILDCARD_PAT@20..21
|
||||
UNDERSCORE@20..21 "_"
|
||||
WHITESPACE@21..22 " "
|
||||
EQ@22..23 "="
|
||||
|
@ -26,7 +26,7 @@ SOURCE_FILE@0..112
|
|||
LET_STMT@36..60
|
||||
LET_KW@36..39 "let"
|
||||
WHITESPACE@39..40 " "
|
||||
PLACEHOLDER_PAT@40..41
|
||||
WILDCARD_PAT@40..41
|
||||
UNDERSCORE@40..41 "_"
|
||||
WHITESPACE@41..42 " "
|
||||
EQ@42..43 "="
|
||||
|
@ -38,7 +38,7 @@ SOURCE_FILE@0..112
|
|||
LET_STMT@65..83
|
||||
LET_KW@65..68 "let"
|
||||
WHITESPACE@68..69 " "
|
||||
PLACEHOLDER_PAT@69..70
|
||||
WILDCARD_PAT@69..70
|
||||
UNDERSCORE@69..70 "_"
|
||||
WHITESPACE@70..71 " "
|
||||
EQ@71..72 "="
|
||||
|
@ -50,7 +50,7 @@ SOURCE_FILE@0..112
|
|||
LET_STMT@88..109
|
||||
LET_KW@88..91 "let"
|
||||
WHITESPACE@91..92 " "
|
||||
PLACEHOLDER_PAT@92..93
|
||||
WILDCARD_PAT@92..93
|
||||
UNDERSCORE@92..93 "_"
|
||||
WHITESPACE@93..94 " "
|
||||
EQ@94..95 "="
|
||||
|
|
|
@ -37,7 +37,7 @@ SOURCE_FILE@0..96
|
|||
PARAM_LIST@79..92
|
||||
L_PAREN@79..80 "("
|
||||
PARAM@80..91
|
||||
BIND_PAT@80..81
|
||||
IDENT_PAT@80..81
|
||||
NAME@80..81
|
||||
IDENT@80..81 "x"
|
||||
COLON@81..82 ":"
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue