Skip to content

Commit

Permalink
refactor: remove unwrap() in advanced_resolver. Change walk_xx functi…
Browse files Browse the repository at this point in the history
…on return type from Option<Symbol> to Result<Option<Symbol>>

Signed-off-by: he1pa <18012015693@163.com>
  • Loading branch information
He1pa committed May 15, 2024
1 parent 46ce7e0 commit 17bdea8
Show file tree
Hide file tree
Showing 5 changed files with 256 additions and 204 deletions.
2 changes: 1 addition & 1 deletion kclvm/loader/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ pub fn load_packages_with_cache(
);
let node_ty_map = prog_scope.node_ty_map;
let gs = Namer::find_symbols(&program, gs);
let gs = AdvancedResolver::resolve_program(&program, gs, node_ty_map.clone());
let gs = AdvancedResolver::resolve_program(&program, gs, node_ty_map.clone())?;
(program, prog_scope.handler.diagnostics.clone(), gs)
} else {
(parse_result.program, IndexSet::default(), gs)
Expand Down
12 changes: 6 additions & 6 deletions kclvm/sema/src/advanced_resolver/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ impl<'ctx> AdvancedResolver<'ctx> {
program: &'ctx Program,
gs: GlobalState,
node_ty_map: NodeTyMap,
) -> GlobalState {
) -> anyhow::Result<GlobalState> {
let mut advanced_resolver = Self {
gs,
ctx: Context {
Expand Down Expand Up @@ -128,14 +128,14 @@ impl<'ctx> AdvancedResolver<'ctx> {
);
for module in modules.iter() {
advanced_resolver.ctx.current_filename = Some(module.filename.clone());
advanced_resolver.walk_module(module);
advanced_resolver.walk_module(module)?;
}
advanced_resolver.leave_scope()
}
}

advanced_resolver.gs.build_sema_db();
advanced_resolver.gs
Ok(advanced_resolver.gs)
}

fn enter_root_scope(
Expand Down Expand Up @@ -303,7 +303,7 @@ mod tests {
None,
)
.node_ty_map;
let gs = AdvancedResolver::resolve_program(&program, gs, node_ty_map);
let gs = AdvancedResolver::resolve_program(&program, gs, node_ty_map).unwrap();
let base_path = Path::new(".").canonicalize().unwrap();
// print_symbols_info(&gs);
let except_symbols = vec![
Expand Down Expand Up @@ -1232,7 +1232,7 @@ mod tests {
let gs = GlobalState::default();
let gs = Namer::find_symbols(&program, gs);
let node_ty_map = resolver::resolve_program(&mut program).node_ty_map;
let gs = AdvancedResolver::resolve_program(&program, gs, node_ty_map);
let gs = AdvancedResolver::resolve_program(&program, gs, node_ty_map).unwrap();
let base_path = Path::new(".").canonicalize().unwrap();

let test_cases = vec![
Expand Down Expand Up @@ -1309,7 +1309,7 @@ mod tests {
let gs = GlobalState::default();
let gs = Namer::find_symbols(&program, gs);
let node_ty_map = resolver::resolve_program(&mut program).node_ty_map;
let gs = AdvancedResolver::resolve_program(&program, gs, node_ty_map);
let gs = AdvancedResolver::resolve_program(&program, gs, node_ty_map).unwrap();
let base_path = Path::new(".").canonicalize().unwrap();

let scope_test_cases = vec![
Expand Down
Loading

0 comments on commit 17bdea8

Please sign in to comment.