mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-05 15:18:49 +00:00
Reorganize runtime package
This commit is contained in:
+5
-3
@@ -1,6 +1,6 @@
|
||||
package os
|
||||
|
||||
import "core:mem"
|
||||
import "core:raw"
|
||||
|
||||
write_string :: proc(fd: Handle, str: string) -> (int, Errno) {
|
||||
return write(fd, cast([]byte)str);
|
||||
@@ -56,9 +56,11 @@ write_entire_file :: proc(name: string, data: []byte, truncate := true) -> (succ
|
||||
}
|
||||
|
||||
write_ptr :: proc(fd: Handle, data: rawptr, len: int) -> (int, Errno) {
|
||||
return write(fd, mem.slice_ptr(cast(^byte)data, len));
|
||||
s := transmute([]byte)raw.Slice{data, len};
|
||||
return write(fd, s);
|
||||
}
|
||||
|
||||
read_ptr :: proc(fd: Handle, data: rawptr, len: int) -> (int, Errno) {
|
||||
return read(fd, mem.slice_ptr(cast(^byte)data, len));
|
||||
s := transmute([]byte)raw.Slice{data, len};
|
||||
return read(fd, s);
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ foreign import dl "system:dl"
|
||||
foreign import libc "system:c"
|
||||
|
||||
import "core:strings"
|
||||
import "core:mem"
|
||||
|
||||
OS :: "linux";
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@ foreign import dl "system:dl"
|
||||
foreign import libc "system:c"
|
||||
|
||||
import "core:strings"
|
||||
import "core:mem"
|
||||
|
||||
OS :: "osx";
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package os
|
||||
|
||||
import "core:sys/win32"
|
||||
import "core:mem"
|
||||
|
||||
OS :: "windows";
|
||||
|
||||
@@ -269,7 +268,7 @@ _alloc_command_line_arguments :: proc() -> []string {
|
||||
arg_list_ptr := win32.command_line_to_argv_w(win32.get_command_line_w(), &arg_count);
|
||||
arg_list := make([]string, int(arg_count));
|
||||
for _, i in arg_list {
|
||||
wc_str := mem.ptr_offset(arg_list_ptr, i)^;
|
||||
wc_str := (^win32.Wstring)(uintptr(arg_list_ptr) + size_of(win32.Wstring)*uintptr(i))^;
|
||||
olen := win32.wide_char_to_multi_byte(win32.CP_UTF8, 0, wc_str, -1,
|
||||
nil, 0, nil, nil);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user