Spec-Zone.ru › Nim 1

dollars

Импорты

since

Процедуры

proc `$`(x: int): string {...}{.magic: "IntToStr", noSideEffect.}
Оператор преобразования в строку для целочисленного аргумента. Возвращает x, преобразованное в строку с десятичным представлением. $ — это общий способ написания toString в Nim. Исходный код Изменить
proc `$`(x: uint64): string {...}{.noSideEffect, raises: [], tags: [].}
Оператор преобразования в строку для аргумента беззнакового целого числа. Возвращает x, преобразованное в строку с десятичным представлением. Исходный код Изменить
proc `$`(x: int64): string {...}{.magic: "Int64ToStr", noSideEffect.}
Оператор преобразования в строку для целочисленного аргумента. Возвращает x, преобразованное в строку с десятичным представлением. Исходный код Изменить
proc `$`(x: float): string {...}{.magic: "FloatToStr", noSideEffect.}
Оператор преобразования в строку для аргумента с плавающей точкой. Возвращает x, преобразованное в строку с десятичным представлением. Исходный код Изменить
proc `$`(x: bool): string {...}{.magic: "BoolToStr", noSideEffect.}
Оператор преобразования в строку для аргумента булевого типа. Возвращает x, преобразованное в строку "false" или "true". Исходный код Изменить
proc `$`(x: char): string {...}{.magic: "CharToStr", noSideEffect.}
Оператор преобразования в строку для символьного аргумента. Возвращает x, преобразованное в строку.
assert $'c' == "c"
Исходный код Изменить
proc `$`(x: cstring): string {...}{.magic: "CStrToStr", noSideEffect.}
Оператор преобразования в строку для аргумента CString. Возвращает x, преобразованное в строку. Исходный код Изменить
proc `$`(x: string): string {...}{.magic: "StrToStr", noSideEffect.}
Оператор преобразования в строку для строкового аргумента. Возвращает x как есть. Этот оператор полезен для универсального кода, так что $expr также работает, если expr уже является строкой. Исходный код Изменить
proc `$`[Enum: enum](x: Enum): string {...}{.magic: "EnumToStr", noSideEffect.}

Оператор преобразования в строку для аргумента перечисления. Это работает для любого типа перечисления благодаря магии компилятора.

Если для конкретного типа перечисления предоставлен оператор $, используется он. (Другими словами: перезапись возможна.)

Исходный код Изменить
proc `$`(t: typedesc): string {...}{.magic: "TypeTrait".}

Возвращает имя заданного типа.

Дополнительные процедуры, связанные с typedesc, см. в модуле typetraits.

doAssert $(typeof(42)) == "int"
doAssert $(typeof("Foo")) == "string"
static: doAssert $(typeof(@['A', 'B'])) == "seq[char]"
Исходный код Изменить
proc `$`[T: tuple | object](x: T): string
Универсальный оператор $ для кортежей, полученный из компонентов x. Пример:
$(23, 45) == "(23, 45)"
$(a: 23, b: 45) == "(a: 23, b: 45)"
$() == "()"
Исходный код Изменить
proc `$`[T](x: set[T]): string
Универсальный оператор $ для множеств, полученный из компонентов x. Пример:
${23, 45} == "{23, 45}"
Исходный код Изменить
proc `$`[T](x: seq[T]): string
Универсальный оператор $ для seq, полученный из компонентов x. Пример:
$(@[23, 45]) == "@[23, 45]"
Исходный код Изменить
proc `$`[T, U](x: HSlice[T, U]): string
Универсальный оператор $ для срезов, полученный из компонентов x. Пример:
$(1 .. 5) == "1 .. 5"
Исходный код Изменить
proc `$`[T, IDX](x: array[IDX, T]): string
Универсальный оператор $ для массивов, полученный из компонентов. Исходный код Изменить
proc `$`[T](x: openArray[T]): string
Универсальный оператор $ для openarrays, полученный из компонентов x. Пример:
$(@[23, 45].toOpenArray(0, 1)) == "[23, 45]"
Исходный код Изменить

© 2006–2021 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/dollars.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API