From 739e403cd57bf47117a3567d80da1a25365be150 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20=C5=BD=C3=A1dn=C3=ADk?= Date: Mon, 21 Feb 2022 23:42:31 +0200 Subject: [PATCH] Do not set visibility to true automatically (#4591) Adding it by default grows the size of the visibility structure a lot. --- crates/nu-parser/src/parse_keywords.rs | 1 + crates/nu-protocol/src/engine/engine_state.rs | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/crates/nu-parser/src/parse_keywords.rs b/crates/nu-parser/src/parse_keywords.rs index d2025f848..1bcb7df2e 100644 --- a/crates/nu-parser/src/parse_keywords.rs +++ b/crates/nu-parser/src/parse_keywords.rs @@ -328,6 +328,7 @@ pub fn parse_def( let block = call.positional.get(2).expect("def call already checked"); let mut error = None; + if let (Some(name), Some(mut signature), Some(block_id)) = (&name_expr.as_string(), sig.as_signature(), block.as_block()) { diff --git a/crates/nu-protocol/src/engine/engine_state.rs b/crates/nu-protocol/src/engine/engine_state.rs index ed66f3ee6..08b3be252 100644 --- a/crates/nu-protocol/src/engine/engine_state.rs +++ b/crates/nu-protocol/src/engine/engine_state.rs @@ -743,7 +743,6 @@ impl<'a> StateWorkingSet<'a> { .expect("internal error: missing required scope frame"); scope_frame.decls.insert(name, decl_id); - scope_frame.visibility.use_decl_id(&decl_id); decl_id } @@ -790,7 +789,6 @@ impl<'a> StateWorkingSet<'a> { if let Some(decl_id) = scope_frame.predecls.remove(name) { scope_frame.decls.insert(name.into(), decl_id); - scope_frame.visibility.use_decl_id(&decl_id); return Some(decl_id); }