Skip to documentation
SLOP

tiny.pluck.toplevel.diagnostics

Reference tiny.pluck toplevel diagnostics

Defined in toplevel.

API (4)

Actions

Public operations.

No direct callersNo direct callstopleveldiagnostics
Static calls · unresolved targets: unknown · external targets: unknown.

Source

Source: lib/pluck/src/toplevel/diagnostics.zig

zig
const context_owner = @import("context.zig");const ToplevelContext = context_owner.ToplevelContext;const top_types = @import("types.zig");const ToplevelError = top_types.ToplevelError;const SourceSpan = top_types.SourceSpan;pub fn formatParseError(self: *const ToplevelContext, writer: anytype) !void {    if (self.last_error_span) |span| {        try writer.print("parse error at {d}:{d}\n", .{ span.start.line + 1, span.start.column + 1 });        return;    }    try writer.print("parse error\n", .{});}pub fn formatError(self: *const ToplevelContext, writer: anytype) !void {    try formatParseError(self, writer);}pub fn lastErrorSpan(self: *const ToplevelContext) ?SourceSpan {    return self.last_error_span;}pub fn formatToplevelError(self: *const ToplevelContext, err: anyerror, writer: anytype) !void {    if (err == ToplevelError.ParseError) {        try formatError(self, writer);        return;    }    if (err == ToplevelError.InvalidToplevelForm) {        try writer.print("invalid top-level form\n", .{});        return;    }    if (err == ToplevelError.InvalidDefineForm) {        try writer.print("invalid define form\n", .{});        return;    }    if (err == ToplevelError.InvalidDefineTypeForm) {        try writer.print("invalid type definition form\n", .{});        return;    }    if (err == ToplevelError.InvalidQueryForm) {        try writer.print("invalid query form\n", .{});        return;    }    if (err == ToplevelError.UndefinedReference) {        try writer.print("undefined reference\n", .{});        return;    }    if (err == ToplevelError.UnrecognizedQueryConstructor) {        if (self.last_query_constructor_typo) |info| {            try writer.print(                "unrecognized query constructor '{s}' (did you mean '{s}'?)\n",                .{ info.got, info.suggestion },            );        } else {            try writer.print("unrecognized query constructor\n", .{});        }        return;    }    if (err == ToplevelError.QueryConstructorNotImplemented) {        try writer.print("query constructor is not implemented\n", .{});        return;    }    if (err == ToplevelError.InvalidQueryConstructorArgs) {        try writer.print("invalid query constructor arguments\n", .{});        return;    }    if (err == ToplevelError.QueryFailed) {        try writer.print("query failed\n", .{});        return;    }    if (err == ToplevelError.FileNotFound) {        try writer.print("file not found\n", .{});        return;    }    if (err == ToplevelError.IoError) {        try writer.print("I/O error\n", .{});        return;    }    if (err == ToplevelError.StdlibLoadFailed) {        try writer.print("internal error: failed to load standard library\n", .{});        return;    }    if (err == ToplevelError.OutOfMemory or err == error.OutOfMemory) {        try writer.print("out of memory\n", .{});        return;    }    try writer.print("error: {s}\n", .{@errorName(err)});}

Source: lib/pluck/src/toplevel/root.zig:12

zig
pub const diagnostics = @import("diagnostics.zig");

Audit

Definitions5
Public names5
Members0
Version26.7.0
Revisiondaab053ee433