PINE LIBRARY

ToStringAr

OVERVIEW

Contains to string conversion methods arrays of int/float/bool/string/line/label/box types

- toS() - method works like array.join() with more flexibility and

- toStringAr() - converts array to string on a per item basis and returns the resulting string[] array

Conversion of each item to string is made using toS() function from moebius1977/ToS/1 library.

GENERAL DESCRIPTION OF LIBRARY FUNCTIONS

All toS(array) methods have same parameters. The only difference will be in format parameter as explained below.

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Like array.join() but with string length limit. Joins elements into readable string (length capped at 4000, truncating the end or beg)
  Parameters:
    this (array<bool>): array to be converted to string
    index_from (int): index_from (int) (Optional) Start from this id (starting from 0, in insertion order). If omitted - start from the first item.
    index_to (int): index_to (int) (Optional) End with this pair (inclusive, in insertion order). If omitted - to last item.
    separator (string): separator (string) (Optional) String to be inserted between pairs. Default: `", "`
    showIDs (bool): showIDs (bool) (Optional) If true item's id is added in the form `id: value`.
    format (string): format (string) (Optional) Format string fo toS(). If omitted default format is used depending in the type.
    truncate_left (bool): truncate_left (bool) (Optional) Truncate from left or right. Default: false.
    size_limit (int): size_limit (int) (Optional) Max output string length. Default: 4000.
    nz (string): nz (string) (Optional) A string used to represent na (na values are substituted with this string).

format parameter depends on the type:

  For toS(bool/int/float[]...) format parameter works in the same way as `str.format()` (i.e. you can use same format strings as with `str.format()` with `{0}` as a placeholder for the value) with some shorthand "format" options available:

--- number ---
- "" => "{0}"
- "number" => "{0}"
- "0" => "{0, number, 0 }"
- "0.0" => "{0, number, 0.0 }"
- "0.00" => "{0, number, 0.00 }"
- "0.000" => "{0, number, 0.000 }"
- "0.0000" => "{0, number, 0.0000 }"
- "0.00000" => "{0, number, 0.00000 }"
- "0.000000" => "{0, number, 0.000000 }"
- "0.0000000" => "{0, number, 0.0000000}"
--- date ---
- "... <date> ... " in any place is substituted with "{0, date, dd.MM.YY}" (e.g. "<date> <time>" results in "{0, date, dd.MM.YY\} {0, time, HH.mm.ss}")
- "date" => "{0, date, dd.MM.YY}"
- "date : time" => "{0, date, dd.MM.YY} : {0, time, HH.mm.ss}"
- "dd.MM" => "{0, date, dd:MM}"
- "dd" => "{0, date, dd}"

--- time ---
- "... <time> ... " in any place is substituted with "{0, time, HH.mm.ss}" (e.g. "<date> <time>" results in "{0, date, dd.MM.YY\} {0, time, HH.mm.ss}")
- "time" => "{0, time, HH:mm:ss}"
- "HH:mm" => "{0, time, HH:mm}"
- "mm:ss" => "{0, time, mm:ss}"
- "date time" => "{0, date, dd.MM.YY\} {0, time, HH.mm.ss}"
- "date, time" => "{0, date, dd.MM.YY\}, {0, time, HH.mm.ss}"
- "date,time" => "{0, date, dd.MM.YY\},{0, time, HH.mm.ss}"
- "date\ntime" => "{0, date, dd.MM.YY\}\n{0, time, HH.mm.ss}"


For toS(line[]...):
    format (string): (string) (Optional) Use `x1` as placeholder for `x1` and so on. E.g. default format is `"(x1, y1) - (x2, y2)"`.

For toS(label[]...):
    format (string): (string) (Optional) Use `x1` as placeholder for `x`, `y1 - for `y` and `txt` for label's text. E.g. default format is `(x1, y1): "txt"` if ptint_text is true and `(x1, y1)` if false.

For toS(box[]... ):
    format (string): (string) (Optional) Use `x1` as placeholder for `x`, `y1 - for `y` etc. E.g. default format is "(x1, y1) - (x2, y2)".

For toS(color][]... ):
    format (string): (string) (Optional) Options are "HEX" (e.g. "#FFFFFF33") or "RGB" (e.g. "rgb(122,122,122,23)"). Default is "HEX".



All toStringAr() methods just convert each item to string using toS with same format options as described above.

  Parameters:
    arr (array<bool>): Array to be converted to a string array.
    format (string): Format string.
    nz (string): Placeholder for na items.


FULL OF FUNCTIONS AND PARAMETERS

Library "ToStringAr"
Contains toString/toS conversion methods for int/float/bool/string/line/label/box and arrays and matrices thereof. Also contains a string wraping function.

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Namespace types: array<bool>
  Parameters:
    this (array<bool>)
    index_from (int)
    index_to (int)
    separator (string)
    showIDs (bool)
    format (string)
    truncate_left (bool)
    size_limit (int)
    nz (string)

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Namespace types: array<int>
  Parameters:
    this (array<int>)
    index_from (int)
    index_to (int)
    separator (string)
    showIDs (bool)
    format (string)
    truncate_left (bool)
    size_limit (int)
    nz (string)

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Namespace types: array<float>
  Parameters:
    this (array<float>)
    index_from (int)
    index_to (int)
    separator (string)
    showIDs (bool)
    format (string)
    truncate_left (bool)
    size_limit (int)
    nz (string)

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Namespace types: array<string>
  Parameters:
    this (array<string>)
    index_from (int)
    index_to (int)
    separator (string)
    showIDs (bool)
    format (string)
    truncate_left (bool)
    size_limit (int)
    nz (string)

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Namespace types: array<line>
  Parameters:
    this (array<line>)
    index_from (int)
    index_to (int)
    separator (string)
    showIDs (bool)
    format (string)
    truncate_left (bool)
    size_limit (int)
    nz (string)

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Namespace types: array<label>
  Parameters:
    this (array<label>)
    index_from (int)
    index_to (int)
    separator (string)
    showIDs (bool)
    format (string)
    truncate_left (bool)
    size_limit (int)
    nz (string)

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Namespace types: array<box>
  Parameters:
    this (array<box>)
    index_from (int)
    index_to (int)
    separator (string)
    showIDs (bool)
    format (string)
    truncate_left (bool)
    size_limit (int)
    nz (string)

method toS(this, index_from, index_to, separator, showIDs, format, truncate_left, size_limit, nz)
  Namespace types: array<color>
  Parameters:
    this (array<color>)
    index_from (int)
    index_to (int)
    separator (string)
    showIDs (bool)
    format (string)
    truncate_left (bool)
    size_limit (int)
    nz (string)

method toStringAr(arr, format, nz)
  Namespace types: array<bool>
  Parameters:
    arr (array<bool>)
    format (string)
    nz (string)

method toStringAr(arr, format, nz)
  Namespace types: array<int>
  Parameters:
    arr (array<int>)
    format (string)
    nz (string)

method toStringAr(arr, format, nz)
  Namespace types: array<float>
  Parameters:
    arr (array<float>)
    format (string)
    nz (string)

method toStringAr(arr, format, nz)
  Namespace types: array<string>
  Parameters:
    arr (array<string>)
    format (string)
    nz (string)

method toStringAr(arr, format, nz)
  Namespace types: array<color>
  Parameters:
    arr (array<color>)
    format (string)
    nz (string)

method toStringAr(arr, format, nz)
  Namespace types: array<line>
  Parameters:
    arr (array<line>)
    format (string)
    nz (string)

method toStringAr(arr, format, nz)
  Namespace types: array<label>
  Parameters:
    arr (array<label>)
    format (string)
    nz (string)

method toStringAr(arr, format, nz)
  Namespace types: array<box>
  Parameters:
    arr (array<box>)
    format (string)
    nz (string)
arrayarraysstringstringstostring

Thư viện Pine

Theo tinh thần TradingView thực sự, tác giả đã xuất bản mã Pine này dưới dạng thư viện nguồn mở để các lập trình viên Pine khác trong cộng đồng của chúng tôi có thể sử dụng lại. Chúc mừng tác giả! Bạn có thể sử dụng thư viện này riêng tư hoặc trong các bài đăng nguồn mở khác. Tuy nhiên, bạn cần sử dụng lại mã này theo Quy tắc nội bộ.

Thông báo miễn trừ trách nhiệm