在数组中§

有关方法 gist,请参阅 上下文中的主要文档

List.gist 完全相同,只是使用方括号作为周围分隔符。

在版本中§

有关方法 gist,请参阅 上下文中的主要文档

method gist(Version:D: --> Str:D)

返回调用者的字符串表示形式,就像 Str 一样,前面加上小写 v

my $v1 = v1.0.1;
my $v2 = Version.new('1.0.1');
say $v1.gist;                                      # OUTPUT: «v1.0.1␤» 
say $v2.gist;                                      # OUTPUT: «v1.0.1␤»

在复数中§

有关方法 gist,请参阅 上下文中的主要文档

method gist(Complex:D: --> Str:D)

返回形式为 "1+2i" 的字符串表示形式,没有内部空格。(Str 转换也会返回此值。)

say (1-4i).gist;                # OUTPUT: «1-4i␤»

在地图中§

有关方法 gist,请参阅 上下文中的主要文档

method gist(Map:D: --> Str:D)

返回包含 Map 的 "gist" 的字符串,对对进行排序并列出最多前 100 个,如果 Map 有 100 多个对,则追加省略号。

在异常中§

有关方法 gist,请参阅 上下文中的主要文档

multi method gist(Exception:D:)

返回异常打印机应为此异常生成的内容。默认实现返回用换行符分隔的消息和回溯。

my $e = X::AdHoc.new(payload => "This exception is pretty bad");
try $e.throw;
if ($!{ say $!.gist};
# OUTPUT: «This exception is pretty bad 
#   in block <unit> at <unknown file> line 1␤»

在列表中§

有关方法 gist,请参阅 上下文中的主要文档

multi method gist(List:D: --> Str:D)

返回包含列表的括号 "gist" 的字符串,列出最多前 100 个元素,用空格分隔,如果列表有 100 多个元素,则追加省略号。如果列表 is-lazy,则返回字符串 '(...)'

put (123).gist;   # OUTPUT: «(1 2 3)␤» 
put (1..∞).List.gist# OUTPUT: «(...)␤» 
 
put (1..200).List.gist;
# OUTPUT: 
# (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 
# 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 
# 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 
# 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 
# 96 97 98 99 100 ...) 

在回溯中§

有关方法 gist,请参阅 上下文中的主要文档

multi method gist(Backtrace:D:)

返回字符串 "Backtrace(42 frames)",其中数字表示可通过 list 方法获得的帧数。

在连接点中§

有关方法 gist,请参阅 上下文中的主要文档

multi method gist(Junction:D:)

折叠 Junction 并返回一个 Str,该字符串由连接点的类型及其组件的 gists 组成

<a 42 c>.all.say# OUTPUT: «all(a, 42, c)␤»

在角色序列中§

有关方法 gist,请参阅 上下文中的主要文档

multi method gist(::?CLASS:D:)

返回 gist缓存 序列。

在 Blob 角色中§

请参阅 上下文中的主要文档 以了解方法 gist

method gist(Blob:D: --> Str:D)

返回包含 Blob 的“gist”的字符串,列出前 100 个元素,用空格分隔,如果 Blob 有超过 100 个元素,则追加省略号。

put Blob.new(123).gist# OUTPUT: «Blob:0x<01 02 03>␤» 
put Blob.new(1..2000).gist;
# OUTPUT: 
# Blob:0x<01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 
# 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 
# 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 
# 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 
# 5B 5C 5D 5E 5F 60 61 62 63 64 ...>

在 Mu 中§

请参阅 上下文中的主要文档 以了解例程 gist

multi        gist(+args --> Str)
multi method gist(   --> Str)

返回对调用者进行字符串表示,经过优化,以便人类快速识别。因此,列表将截断为 100 个元素。使用 .raku 获取所有元素。

Mu 中的默认 gist 方法重新分派到已定义调用者的 raku 方法,并为类型对象调用者返回括号中的类型名称。许多内置类将实例的情况覆盖为更具体的内容,可能会截断输出。

gistsay 隐式调用的方法,因此 say $somethingsay $something.gist 通常会产生相同输出。

say Mu.gist;        # OUTPUT: «(Mu)␤» 
say Mu.new.gist;    # OUTPUT: «Mu.new␤»

在 Attribute 中§

请参阅 上下文中的主要文档 以了解方法 gist

multi method gist(Attribute:D:)

返回类型名称后跟属性名称。

class Hero {
    has @!inventory;
    has Str $.name;
    submethod BUILD:$name:@inventory ) {
        $!name = $name;
        @!inventory = @inventory
    }
}
say Hero.^attributes(:local)[0]; # OUTPUT: «Positional @!inventory␤» 

由于 say 隐式调用 .gist,因此这是此处产生输出的原因。

在 Date 中§

请参阅 上下文中的主要文档 以了解方法 gist

multi method gist(Date:D: --> Str:D)

YYYY-MM-DD 格式返回日期(ISO 8601

say Date.new('2015-12-24').gist;                    # OUTPUT: «2015-12-24␤»

在 ForeignCode 中§

请参阅 上下文中的主要文档 以了解方法 gist

method gistForeignCode:D: )

通过调用 name 返回代码的名称。

在 Submethod 中§

请参阅 上下文中的主要文档 以了解方法 gist

multi method gist(Submethod:D:)

返回子方法的名称。

在 IO::Handle 中§

请参阅 上下文中的主要文档 以了解方法 gist

method gist(IO::Handle:D: --> Str:D)

返回一个字符串,其中包含 .path(如果有)的信息,该句柄是为其创建的,以及它是否 .opened

say IO::Handle.new# IO::Handle<(Any)>(closed) 
say "foo".IO.open;  # IO::Handle<"foo".IO>(opened) 

在 IO::Path 中§

请参阅 上下文中的主要文档 以了解方法 gist

method gist(IO::Path:D: --> Str:D)

返回一个字符串,其中一部分包含 .absolute 的值(如果路径是绝对的)或 .path。请注意,没有对特殊字符进行转义,因此例如 "\b" 表示路径包含反斜杠和字母“b”,而不是退格键。

say "foo/bar".IO;                       # OUTPUT: «"foo/bar".IO␤» 
say IO::Path::Win32.new: C:\foo/bar\# OUTPUT: «"C:\foo/bar\".IO␤»

在 IO::Notification::Change 中§

请参阅 上下文中的主要文档 以了解方法 gist

multi method gist(IO::Notification::Change:D:)

返回路径和事件属性,用分号分隔。

在 Nil 中§

有关方法 gist的语境,请参阅主要文档 in context

method gist(--> Str:D)

返回 "Nil"

在角色 Systemic 中§

有关方法 gist的语境,请参阅主要文档 in context

method gistSystemic:D: )

返回对象名称和版本的实例方法。

say $*RAKU.gist# OUTPUT: «Raku (6.d)␤»

$*RAKURaku 类型的对象,它混合了此角色,因此实现了此方法。