Rename io_writer.history_available
diff --git a/internal/cgen/builtin.go b/internal/cgen/builtin.go
index 596b4aa..37ffb5e 100644
--- a/internal/cgen/builtin.go
+++ b/internal/cgen/builtin.go
@@ -328,7 +328,7 @@
b.printf(", ((uint64_t)(%s%s - %s%s)))", iopPrefix, name, io0Prefix, name)
return nil
- case t.IDHistoryAvailable, t.IDMark:
+ case t.IDHistoryLength, t.IDMark:
b.printf("((uint64_t)(%s%s - %s%s))", iopPrefix, name, io0Prefix, name)
return nil
diff --git a/lang/builtin/builtin.go b/lang/builtin/builtin.go
index c0e2d23..ed29f3e 100644
--- a/lang/builtin/builtin.go
+++ b/lang/builtin/builtin.go
@@ -446,7 +446,7 @@
"io_writer.write_u64le_fast!(a: u64)",
"io_writer.count_since(mark: u64) u64",
- "io_writer.history_available() u64",
+ "io_writer.history_length() u64",
"io_writer.length() u64",
"io_writer.mark() u64",
"io_writer.position() u64",
diff --git a/lang/check/bounds.go b/lang/check/bounds.go
index 13eacb1..17b4509 100644
--- a/lang/check/bounds.go
+++ b/lang/check/bounds.go
@@ -1122,7 +1122,7 @@
// As per cgen's io-private.h, there are three pre-conditions:
// - n <= this.length()
// - distance > 0
- // - distance <= this.history_available()
+ // - distance <= this.history_length()
if len(args) != 2 {
return fmt.Errorf("check: internal error: inconsistent copy_n_from_history_fast arguments")
@@ -1180,7 +1180,7 @@
return fmt.Errorf("check: could not prove distance > 0")
}
- // Check "distance <= this.history_available()".
+ // Check "distance <= this.history_length()".
check2:
for {
for _, x := range q.facts {
@@ -1198,9 +1198,9 @@
continue
}
- // Check that the RHS is "recv.history_available()".
+ // Check that the RHS is "recv.history_length()".
y, method, yArgs := splitReceiverMethodArgs(x.RHS().AsExpr())
- if method != t.IDHistoryAvailable || len(yArgs) != 0 {
+ if method != t.IDHistoryLength || len(yArgs) != 0 {
continue
}
if !y.Eq(recv) {
@@ -1209,7 +1209,7 @@
break check2
}
- return fmt.Errorf("check: could not prove distance <= %s.history_available()", recv.Str(q.tm))
+ return fmt.Errorf("check: could not prove distance <= %s.history_length()", recv.Str(q.tm))
}
return nil
diff --git a/lang/token/list.go b/lang/token/list.go
index e6a754e..72a60ec 100644
--- a/lang/token/list.go
+++ b/lang/token/list.go
@@ -503,19 +503,19 @@
IDDecodeFrameOptions = ID(0x158)
- IDCanUndoByte = ID(0x160)
- IDCountSince = ID(0x161)
- IDHistoryAvailable = ID(0x162)
- IDIsClosed = ID(0x163)
- IDMark = ID(0x164)
- IDMatch15 = ID(0x165)
- IDMatch31 = ID(0x166)
- IDMatch7 = ID(0x167)
- IDPosition = ID(0x168)
- IDSince = ID(0x169)
- IDSkip = ID(0x16A)
- IDSkipU32 = ID(0x16B)
- IDSkipU32Fast = ID(0x16C)
+ IDCanUndoByte = ID(0x160)
+ IDCountSince = ID(0x161)
+ IDHistoryLength = ID(0x162)
+ IDIsClosed = ID(0x163)
+ IDMark = ID(0x164)
+ IDMatch15 = ID(0x165)
+ IDMatch31 = ID(0x166)
+ IDMatch7 = ID(0x167)
+ IDPosition = ID(0x168)
+ IDSince = ID(0x169)
+ IDSkip = ID(0x16A)
+ IDSkipU32 = ID(0x16B)
+ IDSkipU32Fast = ID(0x16C)
IDCopyFromSlice = ID(0x170)
IDLimitedCopyU32FromHistory = ID(0x171)
@@ -870,19 +870,19 @@
IDDecodeFrameOptions: "decode_frame_options",
- IDCanUndoByte: "can_undo_byte",
- IDCountSince: "count_since",
- IDHistoryAvailable: "history_available",
- IDIsClosed: "is_closed",
- IDMark: "mark",
- IDMatch15: "match15",
- IDMatch31: "match31",
- IDMatch7: "match7",
- IDPosition: "position",
- IDSince: "since",
- IDSkip: "skip",
- IDSkipU32: "skip_u32",
- IDSkipU32Fast: "skip_u32_fast",
+ IDCanUndoByte: "can_undo_byte",
+ IDCountSince: "count_since",
+ IDHistoryLength: "history_length",
+ IDIsClosed: "is_closed",
+ IDMark: "mark",
+ IDMatch15: "match15",
+ IDMatch31: "match31",
+ IDMatch7: "match7",
+ IDPosition: "position",
+ IDSince: "since",
+ IDSkip: "skip",
+ IDSkipU32: "skip_u32",
+ IDSkipU32Fast: "skip_u32_fast",
IDCopyFromSlice: "copy_from_slice",
IDLimitedCopyU32FromHistory: "limited_copy_u32_from_history",
diff --git a/std/deflate/decode_huffman_fast.wuffs b/std/deflate/decode_huffman_fast.wuffs
index fce0b9c..22260cb 100644
--- a/std/deflate/decode_huffman_fast.wuffs
+++ b/std/deflate/decode_huffman_fast.wuffs
@@ -290,12 +290,12 @@
pre args.dst.length() >= 258,
{
// Copy from this.history.
- if ((dist_minus_1 + 1) as base.u64) > args.dst.history_available() {
+ if ((dist_minus_1 + 1) as base.u64) > args.dst.history_length() {
// Set (hlen, hdist) to be the length-distance pair to copy
// from this.history, and (length, distance) to be the
// remaining length-distance pair to copy from args.dst.
hlen = 0
- hdist = (((dist_minus_1 + 1) as base.u64) - args.dst.history_available()) as base.u32
+ hdist = (((dist_minus_1 + 1) as base.u64) - args.dst.history_length()) as base.u32
if length > hdist {
assert hdist < length via "a < b: b > a"()
assert hdist < 0x8000 via "a < b: a < c; c <= b"(c: length)
@@ -325,12 +325,12 @@
continue.loop
}
- if ((dist_minus_1 + 1) as base.u64) > args.dst.history_available() {
+ if ((dist_minus_1 + 1) as base.u64) > args.dst.history_length() {
return "#internal error: inconsistent distance"
}
}
// Once again, redundant but explicit assertions.
- assert ((dist_minus_1 + 1) as base.u64) <= args.dst.history_available()
+ assert ((dist_minus_1 + 1) as base.u64) <= args.dst.history_length()
assert args.dst.length() >= 258
// We can therefore prove:
diff --git a/std/deflate/decode_huffman_slow.wuffs b/std/deflate/decode_huffman_slow.wuffs
index 044aa35..48568b8 100644
--- a/std/deflate/decode_huffman_slow.wuffs
+++ b/std/deflate/decode_huffman_slow.wuffs
@@ -203,11 +203,11 @@
while true {
// Copy from this.history.
- if ((dist_minus_1 + 1) as base.u64) > args.dst.history_available() {
+ if ((dist_minus_1 + 1) as base.u64) > args.dst.history_length() {
// Set (hlen, hdist) to be the length-distance pair to copy
// from this.history, and (length, distance) to be the
// remaining length-distance pair to copy from args.dst.
- hdist = (((dist_minus_1 + 1) as base.u64) - args.dst.history_available()) as base.u32
+ hdist = (((dist_minus_1 + 1) as base.u64) - args.dst.history_length()) as base.u32
if length > hdist {
assert hdist < length via "a < b: b > a"()
assert hdist < 0x8000 via "a < b: a < c; c <= b"(c: length)