tiny.closure.baseline
Defined in tiny.closure.
API (7)
Actions
Public operations.
Types and contracts
Public types and contracts.
Source
Source: lib/closure/src/baseline/assemble.zig:29
zig
pub const AuditInput = struct { generation: schema.GenerationId, source_reference: schema.Descriptor, source_revision: schema.Digest, zig_version: schema.Descriptor, optimize: schema.Descriptor, artifact_bytes: u64, artifact_digest: schema.Digest, ranges: []const Range, evidence: []const Evidence,};Source: lib/closure/src/baseline/assemble.zig:19
zig
pub const Evidence = struct { kind: EvidenceKind, digest: schema.Digest,};Source: lib/closure/src/baseline/assemble.zig:24
zig
pub const EvidenceKind = enum { symbols, relocations,};Source: lib/closure/src/baseline/assemble.zig:12
Source: lib/closure/src/baseline/assemble.zig:62
zig
pub const Storage = struct { nodes: [limits.nodes_max]schema.Node = undefined, edges: [limits.edges_max]schema.Edge = undefined, artifacts: [limits.artifacts_max]schema.Artifact = undefined, ranges: [limits.ranges_max]schema.ByteRange = undefined, digests: [limits.digests_max]schema.DigestRecord = undefined, provenance: [limits.provenance_parents_max]schema.ProvenanceParent = undefined, sources: [limits.source_records_max]schema.SourceRecord = undefined, builds: [limits.build_records_max]schema.BuildRecord = undefined, authorities: [limits.authorities_max]schema.Authority = undefined, lineages: [limits.lineage_references_max]schema.LineageReference = undefined, services: [limits.service_descriptors_max]schema.ServiceDescriptor = undefined, roots: [limits.residual_roots_max]schema.ResidualRoot = undefined, claims: [limits.claims_max]schema.Claim = undefined, claim_nodes: [limits.claim_nodes_max]schema.ClaimNode = undefined, node_count: u16 = 0, edge_count: u16 = 0, artifact_count: u16 = 0, range_count: u16 = 0, digest_count: u16 = 0, provenance_count: u16 = 0, source_count: u16 = 0, build_count: u16 = 0, authority_count: u16 = 0, lineage_count: u16 = 0, service_count: u16 = 0, root_count: u16 = 0, claim_count: u16 = 0, claim_node_count: u16 = 0, fn reset(self: *Storage) void { self.node_count = 0; self.edge_count = 0; self.artifact_count = 0; self.range_count = 0; self.digest_count = 0; self.provenance_count = 0; self.source_count = 0; self.build_count = 0; self.authority_count = 0; self.lineage_count = 0; self.service_count = 0; self.root_count = 0; self.claim_count = 0; self.claim_node_count = 0; } fn addNode(self: *Storage, value: schema.Node) Error!schema.NodeId { if (self.node_count == self.nodes.len) { return error.NodeCapacityExceeded; } const id: schema.NodeId = @as(u32, self.node_count) + 1; var stored = value; stored.id = id; self.nodes[self.node_count] = stored; self.node_count += 1; return id; } fn addEdge(self: *Storage, value: schema.Edge) Error!schema.RecordId { if (self.edge_count == self.edges.len) { return error.EdgeCapacityExceeded; } const id: schema.RecordId = @as(u32, self.edge_count) + 1; var stored = value; stored.id = id; self.edges[self.edge_count] = stored; self.edge_count += 1; return id; } fn addArtifact( self: *Storage, value: schema.Artifact, ) Error!schema.RecordId { if (self.artifact_count == self.artifacts.len) { return error.ArtifactCapacityExceeded; } const id: schema.RecordId = @as(u32, self.artifact_count) + 1; var stored = value; stored.id = id; self.artifacts[self.artifact_count] = stored; self.artifact_count += 1; return id; } fn addRange( self: *Storage, value: schema.ByteRange, ) Error!schema.RecordId { if (self.range_count == self.ranges.len) { return error.RangeCapacityExceeded; } const id: schema.RecordId = @as(u32, self.range_count) + 1; var stored = value; stored.id = id; self.ranges[self.range_count] = stored; self.range_count += 1; return id; } fn addDigest( self: *Storage, value: schema.DigestRecord, ) Error!schema.RecordId { if (self.digest_count == self.digests.len) { return error.DigestCapacityExceeded; } const id: schema.RecordId = @as(u32, self.digest_count) + 1; var stored = value; stored.id = id; self.digests[self.digest_count] = stored; self.digest_count += 1; return id; } fn addProvenance( self: *Storage, value: schema.ProvenanceParent, ) Error!schema.RecordId { if (self.provenance_count == self.provenance.len) { return error.ProvenanceCapacityExceeded; } const id: schema.RecordId = @as(u32, self.provenance_count) + 1; var stored = value; stored.id = id; self.provenance[self.provenance_count] = stored; self.provenance_count += 1; return id; } fn addSource( self: *Storage, value: schema.SourceRecord, ) Error!schema.RecordId { if (self.source_count == self.sources.len) { return error.SourceCapacityExceeded; } const id: schema.RecordId = @as(u32, self.source_count) + 1; var stored = value; stored.id = id; self.sources[self.source_count] = stored; self.source_count += 1; return id; } fn addBuild( self: *Storage, value: schema.BuildRecord, ) Error!schema.RecordId { if (self.build_count == self.builds.len) { return error.BuildCapacityExceeded; } const id: schema.RecordId = @as(u32, self.build_count) + 1; var stored = value; stored.id = id; self.builds[self.build_count] = stored; self.build_count += 1; return id; } fn addLineage( self: *Storage, value: schema.LineageReference, ) Error!schema.RecordId { if (self.lineage_count == self.lineages.len) { return error.LineageCapacityExceeded; } const id: schema.RecordId = @as(u32, self.lineage_count) + 1; var stored = value; stored.id = id; self.lineages[self.lineage_count] = stored; self.lineage_count += 1; return id; } fn addService( self: *Storage, value: schema.ServiceDescriptor, ) Error!schema.RecordId { if (self.service_count == self.services.len) { return error.ServiceCapacityExceeded; } const id: schema.RecordId = @as(u32, self.service_count) + 1; var stored = value; stored.id = id; self.services[self.service_count] = stored; self.service_count += 1; return id; } fn addRoot( self: *Storage, value: schema.ResidualRoot, ) Error!schema.RecordId { if (self.root_count == self.roots.len) { return error.RootCapacityExceeded; } const id: schema.RecordId = @as(u32, self.root_count) + 1; var stored = value; stored.id = id; self.roots[self.root_count] = stored; self.root_count += 1; return id; } fn addClaim(self: *Storage, value: schema.Claim) Error!schema.ClaimId { if (self.claim_count == self.claims.len) { return error.ClaimCapacityExceeded; } const id: schema.ClaimId = @as(u32, self.claim_count) + 1; var stored = value; stored.id = id; self.claims[self.claim_count] = stored; self.claim_count += 1; return id; } fn addClaimNode( self: *Storage, value: schema.ClaimNode, ) Error!schema.RecordId { if (self.claim_node_count == self.claim_nodes.len) { return error.ClaimNodeCapacityExceeded; } const id: schema.RecordId = @as(u32, self.claim_node_count) + 1; var stored = value; stored.id = id; self.claim_nodes[self.claim_node_count] = stored; self.claim_node_count += 1; return id; } fn input( self: *const Storage, generation: schema.GenerationId, root: schema.Digest, ) schema.GenerationInput { return .{ .id = generation, .root = root, .nodes = self.nodes[0..self.node_count], .edges = self.edges[0..self.edge_count], .artifacts = self.artifacts[0..self.artifact_count], .ranges = self.ranges[0..self.range_count], .digests = self.digests[0..self.digest_count], .provenance_parents = self.provenance[0..self.provenance_count], .source_records = self.sources[0..self.source_count], .build_records = self.builds[0..self.build_count], .authorities = self.authorities[0..self.authority_count], .lineage_references = self.lineages[0..self.lineage_count], .service_descriptors = self.services[0..self.service_count], .residual_roots = self.roots[0..self.root_count], .claims = self.claims[0..self.claim_count], .claim_nodes = self.claim_nodes[0..self.claim_node_count], }; }};Source: lib/closure/src/baseline/assemble.zig:59
zig
pub const Error = schema.Name.Error || schema.Descriptor.Error || schema.Digest.ParseError || AssemblyError;Source: lib/closure/src/baseline/assemble.zig:378
zig
pub fn assemble( storage: *Storage, audit: AuditInput,) Error!schema.GenerationInput { try preflight(audit); storage.reset(); const profiles = try loadProfiles(); const graph = try addGraph(storage, audit, profiles); const artifact = try addArtifact(storage, audit, graph.auditor); try addEvidence(storage, audit, profiles, graph); try addEdges(storage, graph); const claim = try addClaim( storage, artifact, audit.artifact_digest, profiles, ); try addTreatments(storage, graph, claim); var generation = storage.input( audit.generation, schema.Digest.zero(), ); generation.root = canonical.generation(generation); return generation;}Source: lib/closure/src/baseline/root.zig
zig
const assembly = @import("assemble.zig");pub const AuditInput = assembly.AuditInput;pub const Error = assembly.Error;pub const Evidence = assembly.Evidence;pub const EvidenceKind = assembly.EvidenceKind;pub const Range = assembly.Range;pub const Storage = assembly.Storage;pub const assemble = assembly.assemble;Source: lib/closure/src/root.zig:10
zig
pub const baseline = @import("baseline/root.zig");Complete call list for baseline.assemble
10 direct calls.
lib.closure.src.baseline.assemble.addArtifact[function] — private source atlib/closure/src/baseline/assemble.zig:629in nearest public ownerlib.closure.src.baseline.assemblelib.closure.src.baseline.assemble.addClaim[function] — private source atlib/closure/src/baseline/assemble.zig:820in nearest public ownerlib.closure.src.baseline.assemblelib.closure.src.baseline.assemble.addEdges[function] — private source atlib/closure/src/baseline/assemble.zig:793in nearest public ownerlib.closure.src.baseline.assemblelib.closure.src.baseline.assemble.addEvidence[function] — private source atlib/closure/src/baseline/assemble.zig:678in nearest public ownerlib.closure.src.baseline.assemblelib.closure.src.baseline.assemble.addGraph[function] — private source atlib/closure/src/baseline/assemble.zig:430in nearest public ownerlib.closure.src.baseline.assemblelib.closure.src.baseline.assemble.addTreatments[function] — private source atlib/closure/src/baseline/assemble.zig:856in nearest public ownerlib.closure.src.baseline.assemblelib.closure.src.baseline.assemble.loadProfiles[function] — private source atlib/closure/src/baseline/assemble.zig:422in nearest public ownerlib.closure.src.baseline.assemblelib.closure.src.baseline.assemble.preflight[function] — private source atlib/closure/src/baseline/assemble.zig:404in nearest public ownerlib.closure.src.baseline.assemblelib.closure.src.canonical.generation[module] — private; no exact target atlib/closure/src/canonical/generation.ziglib.trace.src.profiling.storage.reset[function] — private source atlib/trace/src/profiling/storage.zig:19in nearest public ownerlib.trace.src.profiling.storage
Audit
| Definitions | 8 |
|---|---|
| Public names | 8 |
| Members | 45 |
| Version | 26.7.0 |
| Revision | daab053ee433 |