Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

9 Commits

Repository files navigation

This is a simple type that enables pointer arithmetic on raw addresses in a type safe way.

Use file as direct import:

constra=@import("random_access.zig");

Create address objects from pointers:

// requires one-item, many-item, or c-style pointersvaraddr=ra.init(slice.ptr);
// move up by one elementaddr.add(1);
// move back by one elementaddr.sub(1);
// get one-item pointer:constptr=addr.one();
// set value with one-item ptr:addr.one().*=42;
// get many-item pointer:constmptr=addr.many();
// pointer comparisons:addr1.lt(addr2); // less thanaddr1.gt(addr2); // greater thanaddr1.lte(addr2); // less than or equal toaddr1.gte(addr2); // greater than or equal toaddr1.eql(addr2); // equal to// use with loops:while (addr1.lt(addr2)) : (addr1.add(1)) {
// ...
}

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages