PINE LIBRARY

Updated

Library **"rows"**

Error Tolerant Matrix Setter/Getter Operations. Easy ways to add/remove items into start and end of rows as well as arrays to grow and shrink matrix.

if mismatched sizes occur the typified NA value will be there to prevent catastrophic crashing.

columns and rows are split into 2 libraries due to limitations on number of exports as well as ease of style (columns.shift(), rows.pop() )

**pop(_matrix)**

do pop last row off of matrix

Parameters:

**_matrix**: Matrix To Edit

Returns: Array of Last row, removing it from matrix

**shift(_matrix)**

do shift the first row off of matrix

Parameters:

**_matrix**: Matrix To Edit

Returns: Array of First row, removing it from matrix

**get(_matrix, _rowNum)**

retrieve specific row of matrix

Parameters:

**_matrix**: Matrix To Edit

**_rowNum**: Row being Targeted

Returns: Array of selected row number, leaving in place

**push(_matrix, _rowNum, _item)**

add single item onto end of row

Parameters:

**_matrix**: Matrix To Edit

**_rowNum**: Row being Targeted

**_item**: Item to Push on Row

Returns: shifted item from row start

**push(_matrix, _array)**

add single item onto end of matrix

Parameters:

**_matrix**: Matrix To Edit

**_array**: Array to Push on Matrix

Returns: Void

**unshift(_matrix, _rowNum, _item)**

slide single item into start of row remove last

Parameters:

**_matrix**: Matrix To Edit

**_rowNum**: Row being Targeted

**_item**: Item to Unshift on Row

Returns: popped item from row end

**unshift(_matrix, _array)**

add single item into first row of matrix

Parameters:

**_matrix**: Matrix To Edit

**_array**: Array to unshift into Matrix

Returns: Void

**set(_matrix, _rowNum, _array)**

replace an array to an existing row

Parameters:

**_matrix**: Matrix To Edit

**_rowNum**: Row being Targeted

**_array**: Array to place in Matrix

Returns: row that was replaced

**insert(_matrix, _rowNum, _array)**

insert an array to a new row

Parameters:

**_matrix**: Matrix To Edit

**_rowNum**: Row being Targeted

**_array**: Array to place in Matrix

Returns: void

**slideDown(_matrix, _array)**

add single item onto end of row

Parameters:

**_matrix**: Matrix To Edit

**_array**: Array to push to Matrix

Returns: shifted first row

**slideUp(_matrix, _array)**

add single item onto end of row

Parameters:

**_matrix**: Matrix To Edit

**_array**: Array to unshift to Matrix

Returns: popped last row

**pullOut(_matrix, _rowNum)**

add single item onto end of row

Parameters:

**_matrix**: Matrix To Edit

**_rowNum**: Row being Targeted

Returns: removed selected row

Error Tolerant Matrix Setter/Getter Operations. Easy ways to add/remove items into start and end of rows as well as arrays to grow and shrink matrix.

if mismatched sizes occur the typified NA value will be there to prevent catastrophic crashing.

columns and rows are split into 2 libraries due to limitations on number of exports as well as ease of style (columns.shift(), rows.pop() )

do pop last row off of matrix

Parameters:

Returns: Array of Last row, removing it from matrix

do shift the first row off of matrix

Parameters:

Returns: Array of First row, removing it from matrix

retrieve specific row of matrix

Parameters:

Returns: Array of selected row number, leaving in place

add single item onto end of row

Parameters:

Returns: shifted item from row start

add single item onto end of matrix

Parameters:

Returns: Void

slide single item into start of row remove last

Parameters:

Returns: popped item from row end

add single item into first row of matrix

Parameters:

Returns: Void

replace an array to an existing row

Parameters:

Returns: row that was replaced

insert an array to a new row

Parameters:

Returns: void

add single item onto end of row

Parameters:

Returns: shifted first row

add single item onto end of row

Parameters:

Returns: popped last row

add single item onto end of row

Parameters:

Returns: removed selected row

Release Notes

v2Small update for zero sized matrixes

Release Notes

v3Accidental chart image replacement :+)

Release Notes

v4Methods

Release Notes

v5Added:

Namespace types: matrix<int>

Parameters:

Returns: sorted matrix

In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House rules.

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.