diff options
| author | Jon French | 2018-10-16 14:52:01 +0100 |
|---|---|---|
| committer | Jon French | 2018-10-16 14:52:01 +0100 |
| commit | 57c4a243b8cfb06dc7644f9c317ddc270cbbf0d3 (patch) | |
| tree | 52f4617ad4c795abddc80bd6fb84ead026828f2d /src/gen_lib | |
| parent | e7ca37271e187f36527a85bba31c60e0854bc8b7 (diff) | |
Re-implement space-related mapping functions in Sail rather than backends
Uses new primop 'string_take' which is much easier to implement in e.g. C
Diffstat (limited to 'src/gen_lib')
| -rw-r--r-- | src/gen_lib/sail2_string.lem | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gen_lib/sail2_string.lem b/src/gen_lib/sail2_string.lem index c50db099..de7588dc 100644 --- a/src/gen_lib/sail2_string.lem +++ b/src/gen_lib/sail2_string.lem @@ -20,6 +20,10 @@ val string_drop : string -> ii -> string let string_drop str n = toString (drop (natFromInteger n) (toCharList str)) +val string_take : string -> ii -> string +let string_take str n = + toString (take (natFromInteger n) (toCharList str)) + val string_length : string -> ii let string_length s = integerFromNat (stringLength s) |
