564 B
564 B
何度目だという評価環境の実装。
モジュールも考慮して、名前空間のOpenとかも含めた評価環境を実装したい。
名前の側で正規化するのがいいのか?
//Environment全体をSlotMapで管理する
struct Environment<V>{
namespace:Option<Symbol>
parent: Option<EnvKey>
children: Vec<EnvKey>
binds: Vec<(Symbol,V)>
}
letでスコープを広げたときはnamespaceなしで辿ることにする
最終的にはLanguage ServerでSpanからEnvironment
fn get_normalized_name()