这是已记录的内置类型的列表,按类/枚举/模块/角色和类别排序。

基本类

子集 UInt

无符号整数(任意精度)

类 AST

源代码片段的抽象表示

类 Allomorph

数字和字符串的双重值

类 Any

事物/对象

类 Block

具有自身词法范围的代码对象

类 CallFrame

捕获当前帧状态

类 Code

代码对象

类 Collation

封装有关如何对字符串进行排序的说明

类 Compiler

正在使用的编译器相关信息

类 ComplexStr

双值复数和字符串

类 Cool

可以同时作为字符串和数字处理的对象

类 CurrentThreadScheduler

在当前线程上同步执行代码的调度器

类 Date

日历日期

类 DateTime

带时间的日历日期

类 Distribution::Hash

Distribution::Hash

类 Distribution::Locally

Distribution::Locally

类 Distribution::Path

Distribution::Path

类 Distribution::Resource

与发行版一起安装的每个资源

类 Duration

时间长度

类 Encoding::Registry

可用编码的管理

类 FatRat

有理数(任意精度)

类 ForeignCode

Rakudo 特定类,它包装其他语言(通常是 NQP)中的代码

类 Format

根据格式规范将值转换为字符串

类 Formatter

为给定的格式规范生成 Callable

类 HyperSeq

用于并行执行工作批次并按顺序输出的对象

类 HyperWhatever

多个未指定值/参数的占位符

类 Instant

时间中的特定时刻

类 Int

整数(任意精度)

类 IntStr

双值整数和字符串

类 Junction

值的逻辑叠加

类 Label

源代码中的标记位置

类 Lock::Async

非阻塞、非可重入、互斥锁

类 Macro

编译时例程

类 Method

成员函数

类 Mu

Raku 类型层次结构的根。

类 Nil

没有值或良性失败

类 Num

浮点数

类 NumStr

双值浮点数和字符串

类 ObjAt

对象的唯一标识

类 Parameter

Signature 的元素

类 Perl

Perl 相关信息

类 Proxy

具有自定义存储和检索的项目容器

类 RaceSeq

并行执行工作批次,不尊重原始顺序。

类 Raku

Raku 相关信息

类 RakuAST::Doc::Block

包含 RakuDoc 块的信息

类 RakuAST::Doc::Declarator

包含 RakuAST 对象的声明符文档

类 RakuAST::Doc::Markup

包含有关 RakuDoc 标记的信息

类 RakuAST::Doc::Paragraph

包含有关 RakuDoc 段落的信息

类 Rat

有理数(有限精度)

类 RatStr

双值有理数和字符串

类 Routine

具有自身词法范围和return处理的代码对象

类 Routine::WrapHandle

保存解包包装例程所需的所有信息。

类 Scalar

用于间接引用的几乎透明的容器

类 Signature

参数列表模式

类 Str

字符字符串

类 StrDistance

包含字符串转换的结果。

类 Sub

子例程

类 Submethod

子类不继承的成员函数

类 Telemetry

收集性能状态以进行分析

类 Telemetry::Instrument::Thread

用于收集线程数据的仪器

类 Telemetry::Instrument::ThreadPool

用于收集 ThreadPoolScheduler 数据的仪器

类 Telemetry::Instrument::Usage

用于收集 getrusage 数据的仪器

类 Telemetry::Period

一段时间内的性能数据

类 Telemetry::Sampler

遥测仪器 pod

类 ValueObjAt

值类型的唯一标识

类 Variable

用于特征的变量的对象表示

类 Version

模块版本描述符

类 Whatever

未指定参数值的占位符

类 WhateverCode

由 Whatever 初始化构建的代码对象

类 atomicint

整数(平台原子操作大小的本机存储)

类 int

原生整数

包 RakuAST

用于保存 RakuAST 相关类的命名空间

角色 Numeric

数字或可以作为数字的对象

复合类

类 Array

项目化值的序列

类 Bag

具有整数权重的不同对象的不可变集合

类 BagHash

具有整数权重的不同对象的可变集合

类 Capture

适合传递给 Signature 的参数列表

类 Hash

从字符串到项目化值的映射

类 IterationBuffer

位置值的低级存储

类 List

值的序列

类 Map

从字符串到值的不可变映射

类 Mix

具有 Real 权重的不同对象的不可变集合

类 MixHash

具有 Real 权重的不同对象的可变集合

类 NFC

规范形式 C(组合)中的码点字符串

类 NFD

规范形式 D(分解)中的码点字符串

类 NFKC

规范形式 KC(兼容组合)中的码点字符串

类 NFKD

规范形式 KD(兼容分解)中的码点字符串

类 Pair

键值对

类 PseudoStash

伪包的 Stash 类型

类 Range

有序值的区间

类 Seq

可迭代的,可能是延迟的,值的序列

类 Set

不同对象的不可变集合

类 SetHash

不同对象的可变集合

类 Slip

一种 List,它会自动扁平化为外部容器

类 Stash

用于“our”范围符号的表格

类 Uni

Unicode 码点的字符串

类 utf8

用于 utf8 二进制数据的可变 uint8 缓冲区

特定领域类

类 Attribute

成员变量

类 Cancellation

在正常完成之前从 Scheduler 中删除任务

类 Channel

用于将值从生产者发送到消费者的线程安全队列

类 CompUnit

CompUnit

类 CompUnit::Repository::FileSystem

CompUnit::Repository::FileSystem

类 CompUnit::Repository::Installation

CompUnit::Repository::Installation

类 Distro

分发相关信息

类 Grammar

由命名正则表达式组成的正式语法

类 IO::ArgFiles

迭代命令行上指定的的文件内容

类 IO::CatHandle

将多个 IO 处理程序用作一个

类 IO::Handle

打开的文件或流

类 IO::Notification

文件和目录更改的异步通知

类 IO::Notification::Change

由 watch-file 生成的文件中的更改

类 IO::Path

文件或目录路径

类 IO::Path::Cygwin

预加载了 IO::Spec::Cygwin 的 IO::Path

类 IO::Path::Parts

IO::Path 部分封装

类 IO::Path::QNX

预加载了 IO::Spec::QNX 的 IO::Path

类 IO::Path::Unix

预加载了 IO::Spec::Unix 的 IO::Path

类 IO::Path::Win32

预加载了 IO::Spec::Win32 的 IO::Path

类 IO::Pipe

缓冲的进程间字符串或二进制流

类 IO::Socket::Async

TCP 或 UDP 中的异步套接字

类 IO::Socket::Async::ListenSocket

用于监听 TCP 套接字的接口

类 IO::Spec

文件和目录路径上的平台特定操作

类 IO::Spec::Cygwin

Cygwin 上文件和目录路径的平台特定操作

类 IO::Spec::QNX

QNX 上文件和目录路径的平台特定操作

类 IO::Spec::Unix

POSIX 上文件和目录路径的平台特定操作

类 IO::Spec::Win32

Windows 上文件和目录路径的平台特定操作

类 IO::Special

特殊 I/O 设备的路径

类 Kernel

内核相关信息

类 Lock

低级、可重入的互斥锁

类 Lock::ConditionVariable

锁中使用的条件变量

类 Match

成功正则表达式匹配的结果

类 Pod::Block

Pod 文档中的块

类 Pod::Block::Code

Pod 文档中的逐字代码块

类 Pod::Block::Comment

Pod 文档中的注释

类 Pod::Block::Declarator

Pod 文档中的声明块

类 Pod::Block::Named

Pod 文档中的命名块

类 Pod::Block::Para

Pod 文档中的段落

类 Pod::Block::Table

Pod 文档中的表格

类 Pod::Defn

Pod 定义列表

类 Pod::FormattingCode

Pod 格式化代码

类 Pod::Heading

Pod 文档中的标题

类 Pod::Item

Pod 枚举列表中的项目

类 Proc

正在运行的进程(基于文件句柄的接口)

类 Proc::Async

正在运行的进程(异步接口)

类 Promise

异步计算的状态/结果

类 Regex

字符串模式

类 Semaphore

控制多个线程对共享资源的访问

类 Supplier

实时供应工厂

类 Supplier::Preserving

缓存的实时供应工厂

类 Supply

具有多个订阅者的异步数据流

类 Tap

对 Supply 的订阅

类 Thread

代码的并发执行(低级)

类 ThreadPoolScheduler

将工作分配给线程池的调度程序

类 Unicode

与 Unicode 相关的 信息

类 VM

与 Raku 虚拟机相关的 信息

异常类

类 Backtrace

动态调用堆栈的快照

类 Backtrace::Frame

Backtrace 的单个帧

类 Exception

能够中断正常控制流的异常事件

类 Failure

延迟异常

类 X::AdHoc

带有自定义消息的错误

类 X::Anon::Augment

由于增强匿名包而导致的编译错误

类 X::Anon::Multi

由于声明匿名多重而导致的编译错误

类 X::Assignment::RO

尝试为只读内容赋值时抛出的异常

类 X::Attribute::NoPackage

由于在包外部声明属性而导致的编译错误

类 X::Attribute::Package

由于在不合格的包中声明属性而导致的编译错误

类 X::Attribute::Required

由于未用 is required 特性声明属性而导致的编译错误

类 X::Attribute::Undeclared

由于未声明的属性而导致的编译错误

类 X::Augment::NoSuchType

由于增强了不存在的类型而导致的编译错误

类 X::Bind

由于绑定到非变量或容器而导致的错误

类 X::Bind::NativeType

由于绑定到本机类型变量而导致的编译错误

类 X::Bind::Slice

由于绑定到切片而导致的错误

类 X::Caller::NotDynamic

尝试通过 CALLER 访问非动态变量时出错

类 X::Cannot::Empty

由于不适当地使用空集合而导致的错误

类 X::Cannot::Lazy

由于不适当地使用延迟列表而导致的错误

类 X::Channel::ReceiveOnClosed

由于在已关闭的通道上调用接收而导致的错误

类 X::Channel::SendOnClosed

由于在已关闭的通道上调用发送而导致的错误

类 X::Composition::NotComposable

由于组合了不合格的类型而导致的编译错误

类 X::Constructor::Positional

由于将位置参数传递给默认构造函数而导致的错误

类 X::ControlFlow

由于在不合格的范围内调用循环控制命令而导致的错误

类 X::ControlFlow::Return

由于在例程外部调用 return 而导致的错误

类 X::DateTime::TimezoneClash

由于同时使用时区偏移量和 :timezone 而导致的错误

类 X::Declaration::Scope

由于声明具有不合格范围而导致的编译错误

类 X::Declaration::Scope::Multi

由于声明具有不合格范围的多重而导致的编译错误

类 X::Does::TypeObject

由于混合到类型对象中而导致的错误

类 X::Dynamic::NotFound

动态变量不存在时抛出的运行时错误

类 X::Eval::NoSuchLang

由于为 EVAL 指定了未知语言而导致的错误

类 X::Export::NameClash

由于两次导出相同的符号而导致的编译错误

类 X::IO::BinaryMode

在二进制模式下对句柄调用方法时出错。

类 X::IO::Chdir

尝试更改工作目录时出错

类 X::IO::Chmod

尝试更改文件权限时出错

类 X::IO::Chown

尝试更改文件所有权时出错

类 X::IO::Copy

复制文件时出错

类 X::IO::Cwd

确定当前工作目录时出错

类 X::IO::Dir

获取目录内容时出错

类 X::IO::DoesNotExist

对不存在的路径执行文件测试时出错

类 X::IO::Link

创建链接时出错

类 X::IO::Mkdir

创建目录时出错

类 X::IO::Move

移动文件时出错

类 X::IO::Rename

重命名文件或目录时出错

类 X::IO::Rmdir

删除目录时出错

类 X::IO::Symlink

创建符号链接时出错

类 X::IO::Unlink

删除文件时出错

类 X::Inheritance::NotComposed

由于继承自尚未组合的类型而导致的错误

类 X::Inheritance::Unsupported

由于继承自不合格类型而导致的编译错误

类 X::Method::InvalidQualifier

由于从不合格类调用限定方法而导致的错误

类 X::Method::NotFound

由于调用不存在的方法而导致的错误

类 X::Method::Private::Permission

由于在没有权限的情况下调用私有方法而导致的编译错误

类 X::Method::Private::Unqualified

由于未限定的私有方法调用而导致的编译错误

类 X::Mixin::NotComposable

由于使用不合格类型作为 mixin 而导致的错误

类 X::NYI

由于使用未实现的功能而导致的错误

类 X::NoDispatcher

由于在不合格范围内调用调度命令而导致的错误

类 X::Numeric::Real

将数字强制转换为 Real 类型时出错

类 X::Obsolete

由于使用过时的语法而导致的编译错误

类 X::OutOfRange

由于索引超出允许范围而导致的错误

类 X::Package::Stubbed

由于从未定义的存根包而导致的编译错误

类 X::Parameter::Default

由于签名中不允许的默认值而导致的编译错误

类 X::Parameter::MultipleTypeConstraints

由于具有多个类型约束的参数而导致的编译错误

类 X::Parameter::Placeholder

由于签名中不允许的占位符而导致的编译错误

类 X::Parameter::Twigil

由于签名中不允许的 twigil 而导致的编译错误

类 X::Parameter::WrongOrder

由于按错误顺序传递参数而导致的编译错误

类 X::Phaser::Multiple

由于存在多个相同类型的 phaser 而导致的编译错误

类 X::Phaser::PrePost

由于 PRE/POST phaser 的返回值为假而导致的错误

类 X::Placeholder::Block

由于不合格块中的占位符而导致的编译错误

类 X::Placeholder::Mainline

由于主线中的占位符而导致的编译错误

类 X::Proc::Async::AlreadyStarted

由于对已启动的 Proc::Async 对象调用 start 而导致的错误

类 X::Proc::Async::BindOrUse

由于尝试绑定也正在使用的句柄而导致的错误

类 X::Proc::Async::CharsOrBytes

由于同时为文本和二进制读取点击同一个 Proc::Async 流而导致的错误

类 X::Proc::Async::MustBeStarted

由于在生成进程之前与 Proc::Async 流交互而导致的错误

类 X::Proc::Async::OpenForWriting

由于写入只读 Proc::Async 对象而导致的错误

类 X::Proc::Async::TapBeforeSpawn

由于在生成进程后点击 Proc::Async 流而导致的错误

类 X::Proc::Unsuccessful

如果在运行的进程不成功退出后将 Proc 对象沉没,则会抛出异常

类 X::Promise::CauseOnlyValidOnBroken

由于询问未破裂的承诺为何破裂而导致的错误。

类 X::Promise::Vowed

由于直接尝试保持/破坏发誓的承诺而导致的错误。

类 X::Redeclaration

由于声明已声明的符号而导致的编译错误

类 X::Role::Initialization

由于将初始化值传递给不合格的角色而导致的错误

类 X::Scheduler::CueInNaNSeconds

由于将 NaN 传递给 Scheduler.cue 作为 :at、:in 或 :every 而导致的错误

类 X::Seq::Consumed

由于尝试重用已消耗的序列而导致的错误

类 X::Sequence::Deduction

由于从不合格的输入构造序列而导致的错误

类 X::Signature::NameClash

由于两个具有相同名称的命名参数而导致的编译错误

类 X::Signature::Placeholder

由于带签名的块中的占位符导致编译错误

类 X::Str::Numeric

尝试将字符串强制转换为数字时出错

类 X::StubCode

由于执行存根代码导致运行时错误

类 X::Syntax::Augment::WithoutMonkeyTyping

由于在没有 `MONKEY-TYPING` 编译指示的情况下增强类型导致编译错误

类 X::Syntax::Comment::Embedded

由于内联注释格式错误导致编译错误

类 X::Syntax::Confused

由于无法识别的语法导致编译错误

类 X::Syntax::InfixInTermPosition

由于在项位置使用中缀运算符导致编译错误

类 X::Syntax::Malformed

由于构造(通常是声明符)格式错误导致编译错误

类 X::Syntax::Missing

由于缺少语法部分导致编译错误

类 X::Syntax::NegatedPair

由于向否定冒号对传递参数导致编译错误

类 X::Syntax::NoSelf

由于隐式使用不存在的 `self` 导致编译错误

类 X::Syntax::Number::RadixOutOfRange

由于数字字面量中使用不允许的基数导致编译错误

类 X::Syntax::P5

由于使用 Perl 专用语法导致编译错误

类 X::Syntax::Perl5Var

由于使用 Perl 专用默认变量导致编译错误

类 X::Syntax::Regex::Adverb

由于无法识别的正则表达式副词导致编译错误

类 X::Syntax::Regex::SolitaryQuantifier

由于正则表达式量词没有前导原子导致编译错误

类 X::Syntax::Reserved

由于使用为将来使用保留的语法导致编译错误

类 X::Syntax::Self::WithoutObject

由于在不合格的范围内调用 `self` 导致编译错误

类 X::Syntax::Signature::InvocantMarker

由于签名中调用者标记位置错误导致编译错误

类 X::Syntax::Term::MissingInitializer

由于声明项时未初始化导致编译错误

类 X::Syntax::UnlessElse

由于 `unless` 子句后跟 `else` 导致编译错误

类 X::Syntax::Variable::Match

由于声明匹配变量导致编译错误

类 X::Syntax::Variable::Numeric

由于声明数字符号导致编译错误

类 X::Syntax::Variable::Twigil

由于声明中使用不允许的 twigil 导致编译错误

类 X::Temporal::InvalidFormat

由于在创建 DateTime 或 Date 时使用无效格式导致错误

类 X::TypeCheck

由于类型检查失败导致错误

类 X::TypeCheck::Assignment

由于赋值期间类型检查失败导致错误

类 X::TypeCheck::Binding

由于绑定期间类型检查失败导致错误

类 X::TypeCheck::Return

由于 `return` 期间类型检查失败导致错误

类 X::TypeCheck::Splice

由于宏尝试拼接非 AST 值导致编译错误

类 X::Undeclared

由于未声明的符号导致编译错误

角色 CX::Done

完成控制异常

角色 CX::Emit

发出控制异常

角色 CX::Last

最后一个控制异常

角色 CX::Next

下一个控制异常

角色 CX::Proceed

继续控制异常

角色 CX::Redo

重做控制异常

角色 CX::Return

返回控制异常

角色 CX::Succeed

成功控制异常

角色 CX::Take

获取控制异常

角色 CX::Warn

控制异常警告

角色 X::Control

控制异常的角色

元模型类

类 Metamodel::ClassHOW

表示 Raku 类的元对象。

类 Metamodel::DefiniteHOW

类型确定性的元对象

类 Metamodel::EnumHOW

表示 Raku 枚举的元对象。

类 Metamodel::PackageHOW

表示 Raku 包的元对象。

类 Metamodel::Primitives

支持低级类型操作的元对象

角色 Metamodel::ConcreteRoleHOW

提供角色具体实例的实现

角色 Metamodel::CurriedRoleHOW

支持未实例化的参数化角色

基本枚举

枚举 Bool

逻辑布尔值

枚举 Endian

指示字节序(6.d,2018.12 及更高版本)

特定领域枚举

枚举 Order

用于比较运算符的人类可读形式。

模块模块

模块 Test

编写和运行测试

基本角色

类 RakuAST::Doc::DeclaratorTarget

提供前导/尾随文档功能

角色 Callable

可调用代码对象

角色 Dateish

可以作为日期处理的对象

角色 Encoding

支持字符编码。

角色 PredictiveIterator

可以预测值数量的迭代器

角色 Rational

以分子和分母存储的数字

角色 Real

非复数

角色 Stringy

字符串或可以充当字符串的对象

复合角色

角色 Associative

支持通过键查找值的​​对象

角色 Baggy

不同加权对象的集合

角色 Blob

二进制数据的不可变缓冲区('Binary Large OBject')

角色 Buf

二进制数据的可变缓冲区

角色 Enumeration

使用枚举类型背后的角色

角色 Iterable

可迭代容器对象的接口

角色 Iterator

用于生成值序列的通用 API

角色 Mixy

具有 Real 权重的不同对象的集合

角色 Positional

支持通过索引查找值的​​对象

角色 PositionalBindFailover

绑定到 Positional 的故障转移

角色 QuantHash

对象散列,对值的类型有限制

角色 Sequence

序列的常用方法

角色 Setty

不同对象的集合

特定领域角色

角色 CompUnit::PrecompilationRepository

CompUnit::PrecompilationRepository

角色 CompUnit::Repository

CompUnit::Repository

角色 IO

与输入/输出相关的例程

角色 IO::Socket

网络套接字

角色 Scheduler

将任务自动分配给线程的方案

角色 Systemic

与构建系统相关的信息

异常角色

角色 X::Comp

编译时错误的通用角色

角色 X::IO

与 IO 相关的错误

角色 X::OS

操作系统报告的错误

角色 X::Pod

与 Pod 相关的错误

角色 X::Proc::Async

Proc::Async 抛出的异常

角色 X::Syntax

编译器抛出的语法错误

角色 X::Temporal

与 DateTime 或 Date 相关的错误

元模型角色

角色 Metamodel::AttributeContainer

可以保存属性的元对象

角色 Metamodel::C3MRO

支持 C3 方法解析顺序的元对象

角色 Metamodel::Documenting

用于记录类型的元角色。

角色 Metamodel::Finalization

支持对象最终化的元对象

角色 Metamodel::MROBasedMethodDispatch

支持解析继承方法的元对象

角色 Metamodel::MethodContainer

支持存储和内省方法的元对象

角色 Metamodel::Mixins

用于生成 mixin 的元对象

角色 Metamodel::MultipleInheritance

支持多重继承的元对象

角色 Metamodel::Naming

支持命名类型的元对象

角色 Metamodel::ParametricRoleGroupHOW

表示具有不同参数化的角色组

角色 Metamodel::ParametricRoleHOW

表示未实例化的、参数化的角色。

角色 Metamodel::PrivateMethodContainer

支持私有方法的元对象

角色 Metamodel::RoleContainer

支持保存/包含角色的元对象

角色 Metamodel::RolePunning

支持角色“双关语”的元对象。

角色 Metamodel::Stashing

类型存储的元角色

角色 Metamodel::Trusting

支持类型之间信任关系的元对象

角色 Metamodel::Versioning

支持版本控制的元对象