PINE LIBRARY

typeandcast

Обновлено
Library "typeandcast"

Contains the following methods:
_type() - Returns the type of the variable in the forms "int", "array<int>", "matrix<linefill>"
_type_item() - Returns the type of the variable or of the element (for array/matrix). (e.g. `arrayFloat._type_item()` returns 'float').
_type_struct() - Returns the type of the structure only (i.e. "array" or "matrix"), for simple types (like e.g. `int`) returns "simple". (e.g. `arrayFloat._type_struct()` returns 'array').
_tona() - Casts na to the type of the parent object. (e.g. for an `int x` calling `x.tona()` returns `int(na)`

(inspired by the works of kaigouthro and faiyaz7283)

The _type() / _type_item() / _type_struct() methods are available for the following types:
int
float
bool
string
color
line
label
box
table
linefill
int[]
float[]
bool[]
string[]
color[]
line[]
label[]
box[]
table[]
linefill[]
matrix <int>
matrix <float>
matrix <bool>
matrix <string>
matrix <color>
matrix <line>
matrix <label>
matrix <box>
matrix <table>
matrix <linefill>


The `tona()' method is available only for the simple types (except `linefill`, coundn't make it work for it)

Please see the descriptions in the script.
Информация о релизе
v2
Added tona() method for array and matrix types, for which it returns na value of the same type as their underlying elements. E.g. `matrixFloat.tona()` returns `float(na)`
Информация о релизе
v3 Now .tona() is also working for linefill, array<linefill> and matrix<linefill>.
Информация о релизе
v4 Added method cast() - casts int to float if sampleVar is float. Does nothing otherwise. (May be used to cast const int literals to float in the overloaded functions based on the tyoe of other arguments, e.g. if overloaded function adds a row filled with `1` to a float or int matrix.)
Информация о релизе
v5 Fixed missing `export` for tona(linefill)
CASTdebuggingtypes

Библиотека Pine

В истинном духе TradingView автор опубликовал этот код Pine как библиотеку с открытым исходным кодом, чтобы другие программисты Pine из нашего сообщества могли им воспользоваться. Вы можете использовать эту библиотеку в приватных или других публикациях с открытым исходным кодом, но повторное использование этого кода в публикации регулируется Правилами поведения.

Отказ от ответственности