Skip to documentation
SLOP

tiny.chant.ast.types

Reference tiny.chant ast types

Defined in ast.

API (31)

Actions

Public operations.

Types and contracts

Public types and contracts.

Namespaces

Public namespaces.

Values and defaults

Public values and defaults.

No direct callersNo direct callsasttypes
Static calls · unresolved targets: unknown · external targets: unknown.

Source

Source: lib/chant/src/ast/type/types.zig:3

zig
pub const Kind = enum {    auto_type,    void_type,    nullptr_type,    struct_type,    enum_type,    char_type,    short_type,    int_type,    long_type,    bitint_type,    float_type,    double_type,    decimal32_type,    decimal64_type,    decimal128_type,    pointer,    array,    function,};

Source: lib/chant/src/ast/type/types.zig:24

zig
pub const Param = struct {    name: []const u8,    type: *const Type,};

Source: lib/chant/src/ast/type/types.zig:29

zig
pub const Type = struct {    kind: Kind,    tag: []const u8 = "",    is_unsigned: bool = false,    is_fixed_enum: bool = false,    bit_width: u16 = 0,    child: ?*const Type = null,    array_len: ?u64 = null,    vla_len: ?*ast.Expr = null,    params: []const Param = &.{},    variadic: bool = false,};

Source: lib/chant/src/ast/type/types.zig:42

zig
pub const auto_type = Type{ .kind = .auto_type };

Source: lib/chant/src/ast/type/types.zig:45

zig
pub const char_type = Type{ .kind = .char_type };

Source: lib/chant/src/ast/type/types.zig:57

zig
pub const decimal128_type = Type{ .kind = .decimal128_type };

Source: lib/chant/src/ast/type/types.zig:55

zig
pub const decimal32_type = Type{ .kind = .decimal32_type };

Source: lib/chant/src/ast/type/types.zig:56

zig
pub const decimal64_type = Type{ .kind = .decimal64_type };

Source: lib/chant/src/ast/type/types.zig:54

zig
pub const double_type = Type{ .kind = .double_type };

Source: lib/chant/src/ast/type/types.zig:53

zig
pub const float_type = Type{ .kind = .float_type };

Source: lib/chant/src/ast/type/types.zig:49

zig
pub const int_type = Type{ .kind = .int_type };

Source: lib/chant/src/ast/type/types.zig:51

zig
pub const long_type = Type{ .kind = .long_type };

Source: lib/chant/src/ast/type/types.zig:44

zig
pub const nullptr_type = Type{ .kind = .nullptr_type };

Source: lib/chant/src/ast/type/types.zig:47

zig
pub const short_type = Type{ .kind = .short_type };

Source: lib/chant/src/ast/type/types.zig:46

zig
pub const uchar_type = Type{ .kind = .char_type, .is_unsigned = true };

Source: lib/chant/src/ast/type/types.zig:50

zig
pub const uint_type = Type{ .kind = .int_type, .is_unsigned = true };

Source: lib/chant/src/ast/type/types.zig:52

zig
pub const ulong_type = Type{ .kind = .long_type, .is_unsigned = true };

Source: lib/chant/src/ast/type/types.zig:48

zig
pub const ushort_type = Type{ .kind = .short_type, .is_unsigned = true };

Source: lib/chant/src/ast/type/types.zig:43

zig
pub const void_type = Type{ .kind = .void_type };

Source: lib/chant/src/ast/root.zig:1

zig
pub const types = @import("type/root.zig");

Source: lib/chant/src/ast/type/root.zig

zig
const layout_mod = @import("layout.zig");const numeric_mod = @import("numeric.zig");const shape_mod = @import("shape.zig");const types = @import("types.zig");pub const layout = layout_mod;pub const numeric = numeric_mod;pub const shape = shape_mod;pub const Kind = types.Kind;pub const Param = types.Param;pub const Type = types.Type;pub const auto_type = types.auto_type;pub const void_type = types.void_type;pub const nullptr_type = types.nullptr_type;pub const char_type = types.char_type;pub const uchar_type = types.uchar_type;pub const short_type = types.short_type;pub const ushort_type = types.ushort_type;pub const int_type = types.int_type;pub const uint_type = types.uint_type;pub const long_type = types.long_type;pub const ulong_type = types.ulong_type;pub const float_type = types.float_type;pub const double_type = types.double_type;pub const decimal32_type = types.decimal32_type;pub const decimal64_type = types.decimal64_type;pub const decimal128_type = types.decimal128_type;pub const byteSize = layout_mod.byteSize;pub const byteAlign = layout_mod.byteAlign;pub const commonArithmetic = numeric_mod.commonArithmetic;pub const element = shape_mod.element;pub const integerRank = numeric_mod.integerRank;pub const isArithmetic = numeric_mod.isArithmetic;pub const isFloat = numeric_mod.isFloat;pub const isInteger = numeric_mod.isInteger;pub const isPointerLike = shape_mod.isPointerLike;

Audit

Definitions20
Public names21
Members30
Version26.7.0
Revisiondaab053ee433