Skip to documentation
SLOP

tiny.accy.kernel.plan

Reference tiny.accy kernel plan

Defined in kernel.

API (6)

Actions

Public operations.

Types and contracts

Public types and contracts.

Values and defaults

Public values and defaults.

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

Source

Source: lib/accy/src/kernel/model/plan/model.zig:19

zig
pub const Options = struct {    diagnostic_id: ?[]const u8 = null,    diagnostic: ?*builder.VerificationDiagnostic = null,};

Source: lib/accy/src/kernel/model/plan/model.zig:26

zig
pub const Plan = struct {    allocator: std.mem.Allocator,    version: u32,    schedule: schedule_mod.Snapshot,    schedule_version: u32,    launch: schedule_mod.Launch,    body_fingerprint: u64,    schedule_fingerprint: u64,    entry_name: []const u8,    diagnostic_id: []const u8,    argument_count: u32,    params: []builder.Param,    pub fn deinit(self: *Plan) void {        if (self.params.len != 0) self.allocator.free(self.params);        self.allocator.free(self.diagnostic_id);        self.allocator.free(self.entry_name);        self.schedule.deinit(self.allocator);        self.* = undefined;    }};

Source: lib/accy/src/kernel/model/plan/model.zig:9

zig
pub const Error = schedule_mod.ScheduleError ||    builder.BackendError ||    builder.FingerprintError ||    std.mem.Allocator.Error ||    error{        ArgumentCountOverflow,        MissingKernelName,        ParameterSchemaMismatch,    };

Source: lib/accy/src/kernel/model/plan/model.zig:48

zig
pub fn create(    allocator: std.mem.Allocator,    kernel: *builder.Kernel,    schedule: *const schedule_mod.Schedule,    snapshot_limits: schedule_mod.Snapshot.Limits,    options: Options,) Error!Plan {    var local_diagnostic: builder.VerificationDiagnostic = .{};    try kernel.verifyWithDiagnostic(options.diagnostic orelse &local_diagnostic);    const launch = try schedule.launch();    var snapshot = try schedule_mod.createSnapshot(allocator, snapshot_limits, schedule);    errdefer snapshot.deinit(allocator);    const body_fingerprint = try kernel.fingerprint(allocator);    const schedule_fingerprint = snapshot.fingerprint();    const entry_name = kernel.func().getName() orelse return error.MissingKernelName;    const raw_argument_count = kernel.func().getNumArguments();    if (raw_argument_count != kernel.params().len) return error.ParameterSchemaMismatch;    const argument_count = std.math.cast(u32, raw_argument_count) orelse return error.ArgumentCountOverflow;    const owned_entry_name = try allocator.dupe(u8, entry_name);    errdefer allocator.free(owned_entry_name);    const owned_diagnostic_id = try allocator.dupe(u8, options.diagnostic_id orelse entry_name);    errdefer allocator.free(owned_diagnostic_id);    const owned_params = try allocator.dupe(builder.Param, kernel.params());    errdefer allocator.free(owned_params);    return .{        .allocator = allocator,        .version = plan_version,        .schedule = snapshot,        .schedule_version = snapshot.version,        .launch = launch,        .body_fingerprint = body_fingerprint,        .schedule_fingerprint = schedule_fingerprint,        .entry_name = owned_entry_name,        .diagnostic_id = owned_diagnostic_id,        .argument_count = argument_count,        .params = owned_params,    };}
Called byCallsNo direct callstest sourcelib.accy.src.kernel.model.plan.modeltest: Plan captures authored kernel s...kernelcreatePlan
Static calls · unresolved targets: 0 · external targets: 10.

Source: lib/accy/src/kernel/model/plan/model.zig:24

zig
pub const plan_version: u32 = 1;

Source: lib/accy/src/kernel/model/plan/root.zig

zig
const model = @import("model.zig");pub const Error = model.Error;pub const Options = model.Options;pub const Plan = model.Plan;pub const plan_version = model.plan_version;pub const create = model.create;

Source: lib/accy/src/kernel/root.zig:13

zig
pub const plan = model.plan;

Audit

Definitions7
Public names13
Members13
Version26.7.0
Revisiondaab053ee433