chore: remove trailing whitespace and fix indentation across multiple files

This commit is contained in:
2025-12-09 18:41:05 +00:00
parent f30f58044c
commit 758399397a
15 changed files with 191 additions and 453 deletions
+53 -12
View File
@@ -325,9 +325,23 @@ static bool _rava_vm_execute_instruction(RavaVM_t *vm, RavaCallFrame_t *frame, R
break;
case RAVA_OP_CALL_STATIC: {
RavaMethod_t *method = _rava_vm_find_method_cached(vm,
int arg_count = instr->operand.call.arg_count;
RavaMethod_t *method = (RavaMethod_t*)instr->operand.call.cached_method;
if (!method) {
RavaValue_t *args = arg_count > 0 ? &stack->values[stack->top - arg_count] : NULL;
method = _rava_vm_find_method_overload(vm,
instr->operand.call.class_name,
instr->operand.call.method_name,
args, (size_t)arg_count);
if (!method) {
method = _rava_vm_find_method_cached(vm,
instr->operand.call.class_name,
instr->operand.call.method_name);
}
if (method) {
instr->operand.call.cached_method = method;
}
}
if (!method) {
vm->had_error = true;
vm->error_message = malloc(RAVA_ERROR_BUFFER_SIZE);
@@ -339,7 +353,7 @@ static bool _rava_vm_execute_instruction(RavaVM_t *vm, RavaCallFrame_t *frame, R
RavaCallFrame_t *new_frame = rava_call_frame_create(method);
for (int i = instr->operand.call.arg_count - 1; i >= 0; i--) {
for (int i = arg_count - 1; i >= 0; i--) {
new_frame->locals[i] = rava_stack_pop(stack);
}
@@ -387,7 +401,11 @@ static bool _rava_vm_execute_instruction(RavaVM_t *vm, RavaCallFrame_t *frame, R
class_name = obj_val.data.object_val->class_name;
}
RavaMethod_t *method = _rava_vm_find_method_cached(vm, class_name, instr->operand.call.method_name);
RavaMethod_t *method = _rava_vm_find_method_overload(vm, class_name, instr->operand.call.method_name,
args, (size_t)instr->operand.call.arg_count);
if (!method) {
method = _rava_vm_find_method_cached(vm, class_name, instr->operand.call.method_name);
}
if (!method) {
if (strcmp(instr->operand.call.method_name, "<init>") == 0 && instr->operand.call.arg_count == 0) {
break;
@@ -467,7 +485,11 @@ static bool _rava_vm_execute_instruction(RavaVM_t *vm, RavaCallFrame_t *frame, R
RavaValue_t obj_val = rava_stack_pop(stack);
const char *super_class = instr->operand.call.class_name;
RavaMethod_t *method = _rava_vm_find_method_cached(vm, super_class, instr->operand.call.method_name);
RavaMethod_t *method = _rava_vm_find_method_overload(vm, super_class, instr->operand.call.method_name,
args, (size_t)instr->operand.call.arg_count);
if (!method) {
method = _rava_vm_find_method_cached(vm, super_class, instr->operand.call.method_name);
}
if (!method) {
vm->had_error = true;
vm->error_message = malloc(RAVA_ERROR_BUFFER_SIZE);
@@ -3640,8 +3662,23 @@ uf_label:
uf_call:
uf_call_static: {
RavaMethod_t *target = _rava_vm_find_method_cached(vm,
instr->operand.call.class_name, instr->operand.call.method_name);
RavaNanboxValue_t args[16];
for (int i = instr->operand.call.arg_count - 1; i >= 0; i--) {
args[i] = UF_POP();
}
RavaMethod_t *target = (RavaMethod_t*)instr->operand.call.cached_method;
if (!target) {
target = _rava_vm_find_method_overload_nb(vm,
instr->operand.call.class_name, instr->operand.call.method_name,
args, (size_t)instr->operand.call.arg_count);
if (!target) {
target = _rava_vm_find_method_cached(vm,
instr->operand.call.class_name, instr->operand.call.method_name);
}
if (target) {
instr->operand.call.cached_method = target;
}
}
if (!target) {
vm->had_error = true;
goto uf_done;
@@ -3650,10 +3687,6 @@ uf_call_static: {
rava_optimize_superinstructions(target);
target->label_table = rava_labeltable_create(target->instructions);
}
RavaNanboxValue_t args[16];
for (int i = instr->operand.call.arg_count - 1; i >= 0; i--) {
args[i] = UF_POP();
}
frame->pc = pc;
FastFrame_t *new_frame = rava_fastframe_push(target, target->local_count);
if (!new_frame) {
@@ -3767,7 +3800,11 @@ uf_call_virtual: {
}
RavaObject_t *obj = rava_nanbox_as_object(obj_val);
const char *class_name = obj->class_name;
RavaMethod_t *target = _rava_vm_find_method_cached(vm, class_name, instr->operand.call.method_name);
RavaMethod_t *target = _rava_vm_find_method_overload_nb(vm, class_name, instr->operand.call.method_name,
args, (size_t)arg_count);
if (!target) {
target = _rava_vm_find_method_cached(vm, class_name, instr->operand.call.method_name);
}
if (!target) {
if (strcmp(mname, "<init>") == 0 && arg_count == 0) {
UF_DISPATCH();
@@ -3824,7 +3861,11 @@ uf_call_super: {
}
RavaNanboxValue_t obj_val = UF_POP();
const char *super_class = instr->operand.call.class_name;
RavaMethod_t *target = _rava_vm_find_method_cached(vm, super_class, instr->operand.call.method_name);
RavaMethod_t *target = _rava_vm_find_method_overload_nb(vm, super_class, instr->operand.call.method_name,
args, (size_t)arg_count);
if (!target) {
target = _rava_vm_find_method_cached(vm, super_class, instr->operand.call.method_name);
}
if (!target) {
vm->had_error = true;
goto uf_done;
+1
View File
@@ -154,6 +154,7 @@ RavaClass_t* _rava_vm_find_class(RavaVM_t *vm, const char *class_name);
RavaMethod_t* _rava_vm_find_method(RavaVM_t *vm, const char *class_name, const char *method_name);
RavaMethod_t* _rava_vm_find_method_cached(RavaVM_t *vm, const char *class_name, const char *method_name);
RavaMethod_t* _rava_vm_find_method_overload(RavaVM_t *vm, const char *class_name, const char *method_name, RavaValue_t *args, size_t arg_count);
RavaMethod_t* _rava_vm_find_method_overload_nb(RavaVM_t *vm, const char *class_name, const char *method_name, RavaNanboxValue_t *args, size_t arg_count);
RavaStaticFieldTable_t* rava_static_field_table_create(void);
void rava_static_field_table_destroy(RavaStaticFieldTable_t *table);
+12
View File
@@ -119,3 +119,15 @@ RavaMethod_t* _rava_vm_find_method_cached(RavaVM_t *vm, const char *class_name,
}
return method;
}
RavaMethod_t* _rava_vm_find_method_overload_nb(RavaVM_t *vm, const char *class_name, const char *method_name, RavaNanboxValue_t *args, size_t arg_count) {
if (arg_count == 0) {
return _rava_vm_find_method_overload(vm, class_name, method_name, NULL, 0);
}
RavaValue_t converted_args[16];
size_t count = arg_count > 16 ? 16 : arg_count;
for (size_t i = 0; i < count; i++) {
converted_args[i] = rava_nanbox_to_value(args[i]);
}
return _rava_vm_find_method_overload(vm, class_name, method_name, converted_args, count);
}