More work towards the new API
This commit is contained in:
@@ -1651,6 +1651,37 @@ type_check :: (checker : *Semantic_Checker, root : *AST_Node) {
|
||||
traverse(checker, root);
|
||||
}
|
||||
|
||||
check :: (result : *Compile_Result) {
|
||||
for *file : result.files {
|
||||
checker : Semantic_Checker;
|
||||
init_semantic_checker(*checker, file.ast_root, file.file.path);
|
||||
check(*checker);
|
||||
|
||||
//@Incomplete: Copy over the result from the checker result
|
||||
|
||||
//@Note: Meh copy string...
|
||||
file.vertex_entry_point = checker.result.vertex_entry_point;
|
||||
file.pixel_entry_point = checker.result.pixel_entry_point;
|
||||
|
||||
file.constant_buffers.array = checker.result.constant_buffers.array;
|
||||
file.constant_buffers.count = checker.result.constant_buffers.count;
|
||||
file.scope_stack.allocator = checker.result.scope_stack.allocator;
|
||||
file.scope_stack.arena = checker.result.scope_stack.arena;
|
||||
|
||||
file.scope_stack.stack.data = checker.result.scope_stack.stack.data;
|
||||
file.scope_stack.stack.count = checker.result.scope_stack.stack.count;
|
||||
|
||||
file.type_var_arena = checker.result.type_var_arena;
|
||||
file.type_var_allocator = checker.result.type_var_allocator;
|
||||
file.type_variables.data = checker.result.type_variables.data;
|
||||
file.type_variables.count = checker.result.type_variables.count;
|
||||
|
||||
file.property_name = copy_string(checker.result.property_name);
|
||||
|
||||
copy_messages(checker.result.messages, *result.messages);
|
||||
}
|
||||
}
|
||||
|
||||
check :: (checker : *Semantic_Checker, root : *AST_Node) -> Semantic_Check_Result {
|
||||
checker.current_buffer_index = 0;
|
||||
checker.current_sampler_index = 0;
|
||||
|
||||
Reference in New Issue
Block a user