extern struct CompileResult [src]

WebSocket server->client. Sent after a Step.Compile finishes, providing the step's time report. Trailing: llvm_pass_timings: [llvm_pass_timings_len]u8 (ASCII-encoded) for each files_len: name (null-terminated UTF-8 string) for each decls_len: name (null-terminated UTF-8 string) file: u32 (index of file this decl is in) sema_ns: u64 (nanoseconds spent semantically analyzing this decl) codegen_ns: u64 (nanoseconds spent semantically analyzing this decl) link_ns: u64 (nanoseconds spent semantically analyzing this decl)

Fields

tag: ToClientTag = .time_report_compile_result
step_idx: u32 align(1)
flags: Flags
stats: Stats align(1)
ns_total: u64 align(1)
llvm_pass_timings_len: u32 align(1)
files_len: u32 align(1)
decls_len: u32 align(1)

Members

Source

pub const CompileResult = extern struct { tag: ToClientTag = .time_report_compile_result, step_idx: u32 align(1), flags: Flags, stats: Stats align(1), ns_total: u64 align(1), llvm_pass_timings_len: u32 align(1), files_len: u32 align(1), decls_len: u32 align(1), pub const Flags = packed struct(u8) { use_llvm: bool, _: u7 = 0, }; pub const Stats = extern struct { n_reachable_files: u32, n_imported_files: u32, n_generic_instances: u32, n_inline_calls: u32, cpu_ns_parse: u64, cpu_ns_astgen: u64, cpu_ns_sema: u64, cpu_ns_codegen: u64, cpu_ns_link: u64, real_ns_files: u64, real_ns_decls: u64, real_ns_llvm_emit: u64, real_ns_link_flush: u64, pub const init: Stats = .{ .n_reachable_files = 0, .n_imported_files = 0, .n_generic_instances = 0, .n_inline_calls = 0, .cpu_ns_parse = 0, .cpu_ns_astgen = 0, .cpu_ns_sema = 0, .cpu_ns_codegen = 0, .cpu_ns_link = 0, .real_ns_files = 0, .real_ns_decls = 0, .real_ns_llvm_emit = 0, .real_ns_link_flush = 0, }; }; }