[obsidian] vault backup: 2026-02-02 23:23:19[
All checks were successful
Build / build (push) Successful in 22m38s

This commit is contained in:
2026-02-02 23:23:20 +09:00
parent a8187dc4f4
commit 40a652e455

View File

@@ -10,17 +10,25 @@
struct Environment<V>{
namespace:Option<Symbol>
parent: Option<EnvKey>
children: Vec<EnvKey>
children: Vec<EnvKey>,
span:Range<u64>,
binds: Vec<(Symbol,V)>
}
```
letでスコープを広げたときはnamespaceなしで辿ることにする
最終的にはLanguage ServerでSpanからEnvironment
最終的にはLanguage ServerでSpanからEnvironmentの位置を補足したいということになる。
基本的に、子環境のEnvironmentは常に親のEncより狭い範囲のSpanを持つはず。そして子要素同士のSpanは交差しないはず。
親から子要素を二分探索で辿って行ってSpanは交差しないからPartialOrdにできるはず
```rust
fn get_normalized_name()
fn get_completions(arena:SlotMap<_>,root_env:EnvKey,span:Span){
}
```