tiny.smt.Script
Defined in term.
A logic name and the list of terms asserted over one Context.
API (6)
Actions
Public operations.
assertTerm: Appendsassertionto the list.deinit: Frees the list of assertions and leaves the terms to theContext.init: Returns a script overctxwith logiclogicand no assertions.
Fields and members
Public fields and members.
Source
Source: lib/smt/src/term.zig:1013
zig
/// A logic name and the list of terms asserted over one `Context`. `smtlib.parseScript` returns/// one, `smtlib.writeScript` prints one, and code that solves a script asserts each of its terms/// with the encoder. It borrows the `Context` and allocates its list with the `Context`'s/// allocator.pub const Script = struct { /// The `Context` whose terms the script asserts. ctx: *Context, /// The logic name, such as `QF_BV`, that `set-logic` gives. The script borrows it: a script /// from `smtlib.parseScript` points into the parsed text, which has to outlive the script. logic: []const u8, /// The asserted terms in the order they were asserted. assertions: std.ArrayList(Term) = .empty, /// Returns a script over `ctx` with logic `logic` and no assertions. Code makes an empty script /// before asserting terms, as the SMT-LIB writer's tests do. It copies neither and allocates /// nothing. pub fn init(ctx: *Context, logic: []const u8) Script { return .{ .ctx = ctx, .logic = logic }; } /// Frees the list of assertions and leaves the terms to the `Context`. The owner calls it /// before freeing the `Context`. pub fn deinit(self: *Script) void { self.assertions.deinit(self.ctx.allocator); self.* = undefined; } /// Appends `assertion` to the list. Code adds one assertion to a script with it. It checks /// nothing, including whether the term is Boolean. pub fn assertTerm(self: *Script, assertion: Term) !void { try self.assertions.append(self.ctx.allocator, assertion); }};Source: lib/smt/src/root.zig:120
zig
pub const Script = term.Script;Complete caller list for Script.assertTerm
13 direct callers.
tiny.smt.smtlib.parse.script.parse[function] atlib/smt/src/smtlib/parse/script.zig:29lib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_array_select_store_terms[function] — test source atlib/smt/src/smtlib/test.zig:262in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_concat_and_extract[function] — test source atlib/smt/src/smtlib/test.zig:183in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_extensions[function] — test source atlib/smt/src/smtlib/test.zig:211in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_rotations[function] — test source atlib/smt/src/smtlib/test.zig:237in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_shifts[function] — test source atlib/smt/src/smtlib/test.zig:148in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_subtraction[function] — test source atlib/smt/src/smtlib/test.zig:95in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bitwise_bit-vector_terms[function] — test source atlib/smt/src/smtlib/test.zig:119in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_emitted_QF_BV_script[function] — test source atlib/smt/src/smtlib/test.zig:13in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_overflow_predicates[function] — test source atlib/smt/src/smtlib/test.zig:64in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_signed_bit-vector_comparisons[function] — test source atlib/smt/src/smtlib/test.zig:39in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_uninterpreted_function_applications[function] — test source atlib/smt/src/smtlib/test.zig:290in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.write.test_SMT-LIB_writer_emits_declarations_and_assertions[function] — test source atlib/smt/src/smtlib/write.zig:183in nearest public ownertiny.smt.smtlib.write
Complete caller list for Script.deinit
13 direct callers.
tiny.smt.smtlib.parse.script.parse[function] atlib/smt/src/smtlib/parse/script.zig:29lib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_array_select_store_terms[function] — test source atlib/smt/src/smtlib/test.zig:262in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_concat_and_extract[function] — test source atlib/smt/src/smtlib/test.zig:183in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_extensions[function] — test source atlib/smt/src/smtlib/test.zig:211in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_rotations[function] — test source atlib/smt/src/smtlib/test.zig:237in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_shifts[function] — test source atlib/smt/src/smtlib/test.zig:148in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_subtraction[function] — test source atlib/smt/src/smtlib/test.zig:95in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bitwise_bit-vector_terms[function] — test source atlib/smt/src/smtlib/test.zig:119in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_emitted_QF_BV_script[function] — test source atlib/smt/src/smtlib/test.zig:13in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_overflow_predicates[function] — test source atlib/smt/src/smtlib/test.zig:64in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_signed_bit-vector_comparisons[function] — test source atlib/smt/src/smtlib/test.zig:39in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_uninterpreted_function_applications[function] — test source atlib/smt/src/smtlib/test.zig:290in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.write.test_SMT-LIB_writer_emits_declarations_and_assertions[function] — test source atlib/smt/src/smtlib/write.zig:183in nearest public ownertiny.smt.smtlib.write
Complete caller list for Script.init
13 direct callers.
tiny.smt.smtlib.parse.script.parse[function] atlib/smt/src/smtlib/parse/script.zig:29lib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_array_select_store_terms[function] — test source atlib/smt/src/smtlib/test.zig:262in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_concat_and_extract[function] — test source atlib/smt/src/smtlib/test.zig:183in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_extensions[function] — test source atlib/smt/src/smtlib/test.zig:211in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_rotations[function] — test source atlib/smt/src/smtlib/test.zig:237in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_shifts[function] — test source atlib/smt/src/smtlib/test.zig:148in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bit-vector_subtraction[function] — test source atlib/smt/src/smtlib/test.zig:95in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_bitwise_bit-vector_terms[function] — test source atlib/smt/src/smtlib/test.zig:119in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_emitted_QF_BV_script[function] — test source atlib/smt/src/smtlib/test.zig:13in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_overflow_predicates[function] — test source atlib/smt/src/smtlib/test.zig:64in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_signed_bit-vector_comparisons[function] — test source atlib/smt/src/smtlib/test.zig:39in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.test.test_SMT-LIB_parser_rereads_uninterpreted_function_applications[function] — test source atlib/smt/src/smtlib/test.zig:290in nearest public ownerlib.smt.src.smtlib.testlib.smt.src.smtlib.write.test_SMT-LIB_writer_emits_declarations_and_assertions[function] — test source atlib/smt/src/smtlib/write.zig:183in nearest public ownertiny.smt.smtlib.write
Audit
| Definitions | 4 |
|---|---|
| Public names | 8 |
| Members | 3 |
| Version | 26.7.0 |
| Revision | daab053ee433 |