#if NULLCHAR_SAME
#error The module scrstring_fastindices should not be included directly
#endif

byte scrstrzlen(pointer str) {
    byte index
    index = 0
    while str[index] != nullchar_scr {
        index += 1
    }
    return index
}

sbyte scrstrzcmp(pointer str1, pointer str2) {
    byte i1
    byte i2
    i1 = 0
    i2 = 0
    while true {
        if str1[i1] != str2[i2] {
            if str1[i1] < str2[i2] { return -1 }
            return 1
        }
        if str1[i1] == nullchar_scr {
            return 0
        }
        i1 += 1
        i2 += 1
    }
}

void scrstrzcopy(pointer dest, pointer src) {
    byte i
    byte c
    i = 0
    do {
        c = src[i]
        dest[i] = c
        i += 1
    } while c != nullchar_scr
}

void scrstrzpaste(pointer dest, pointer src) {
    byte i
    byte c
    i = 0
    while true {
        c = src[i]
        if c == nullchar_scr { return }
        dest[i] = c
        i += 1
    }
}
