Skip to content

Ops

Module: core.ops
Source: core/ops.zn

Copy

Empty marker to tell compiler that structure can be copied (simple load instructions)


// No Methods

Clone

Clone structure method (simply interface without compiler markers)


pub fn clone(*const self) Self;

Drop

Automatic function to free struct resources after it goes out of scope


fn drop(self) void;

Ord

Comparison interface between Self structs


fn cmp(*const self, other: *const Self) Ordering;

Eq

Interface for == operator between structures


fn eq(*const self, other: *const Self) bool;

Add

+ operator


fn add(self, other: Self) Self;

Sub

- operator


fn sub(self, other: Self) Self;

Mul

* operator


fn mul(self, other: Self) Self;

Div

/ operator


fn div(self, other: Self) Self;

Mod

% operator


fn mod(self, other: Self) Self;

BitAnd

& operator


fn bit_and(self, other: Self) Self;

BitOr

| operator


fn bit_or(self, other: Self) Self;

BitXor

^ operator


fn bit_xor(self, other: Self) Self;

BitShl

<< operator


fn bit_shl(self, other: Self) Self;

BitShr

>> operator


fn bit_shr(self, other: Self) Self;

BitNot

~ operator


fn bit_not(self) Self;

Neg

- operator


fn neg(self) Self;

Not

! operator


fn not(self) Self;

Deref[T]

Dereference operator (*expr)


fn deref(*const self) T;

DerefPtr[T]

Dereference operator with pointer access (example: *lvalue = rvalue, uses DerefPtr for lvalue)


fn deref_ptr(*self) *T;

Index[T]

Index operation (expr[index] -> T)


fn index(*const self, index: usize) T;

IndexPtr[T]

Index operation with pointer access (lvalue[index] = rvalue)


fn index_ptr(*self, index: usize) *T;

Hash

Hash value generation for hash based collections


fn hash(*const self) u64;

Ordering

An ordering result between two values


Less,
Equal,
Greater