aboutsummaryrefslogtreecommitdiff
path: root/system/libraries/mem/mem.zig
blob: b51356789c7a536200bdd022d3b49060f55e9687 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//! Memory utilities

pub fn copy(dest: []u8, src: []const u8) void {
    const len = @min(dest.len, src.len);
    for (0..len) |i| {
        dest[i] = src[i];
    }
}

pub fn zero(buf: []u8) void {
    for (buf) |*b| {
        b.* = 0;
    }
}

pub fn equals(a: []const u8, b: []const u8) bool {
    if (a.len != b.len) return false;
    for (a, b) |ac, bc| {
        if (ac != bc) return false;
    }
    return true;
}