luaur-analysis 0.1.3

Luau type checker and type inference (Rust).
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::records::substitution::Substitution;
use crate::type_aliases::type_pack_id::TypePackId;

impl Substitution {
    pub fn replace_type_pack_id(&mut self, tp: TypePackId) -> TypePackId {
        let tp = unsafe { (*self.base.log).follow_type_pack_id(tp) };

        if let Some(prev_tp) = self.new_packs.find(&tp) {
            *prev_tp
        } else {
            tp
        }
    }
}