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

ספריית Pine

ברוח TradingView אמיתית, המחבר פרסם קוד Pine זה כספריית קוד פתוח כדי שמתכנתי Pine אחרים מהקהילה שלנו יוכלו לעשות בו שימוש חוזר. כל הכבוד למחבר! אתה יכול להשתמש בספרייה זו באופן פרטי או בפרסומים אחרים בקוד פתוח, אך שימוש חוזר בקוד זה בפרסום כפוף לכללי הבית.

כתב ויתור