GNU Octave
4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
|
#include "str-vec.h"
Public Types | |
typedef bool(* | compare_fcn_type )(typename ref_param< std::string >::type, typename ref_param< std::string >::type) |
typedef ref_param< std::string > ::type | crefT |
typedef std::string | element_type |
Public Member Functions | |
string_vector (void) | |
string_vector (octave_idx_type n) | |
string_vector (const char *s) | |
string_vector (const std::string &s) | |
string_vector (const string_vector &s) | |
string_vector (const std::list< std::string > &lst) | |
string_vector (const std::set< std::string > &lst) | |
string_vector (const Array< std::string > &s) | |
string_vector (const char *const *s) | |
string_vector (const char *const *s, octave_idx_type n) | |
~string_vector (void) | |
string_vector & | append (const std::string &s) |
string_vector & | append (const string_vector &sv) |
Array< std::string > | as_column (void) const |
Return the array as a column vector. More... | |
Array< std::string > | as_matrix (void) const |
Return the array as a matrix. More... | |
Array< std::string > | as_row (void) const |
Return the array as a row vector. More... | |
size_t | byte_size (void) const |
char ** | c_str_vec (void) const |
std::string & | checkelem (octave_idx_type n) |
std::string & | checkelem (octave_idx_type i, octave_idx_type j) |
std::string & | checkelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) |
std::string & | checkelem (const Array< octave_idx_type > &ra_idx) |
crefT | checkelem (octave_idx_type n) const |
crefT | checkelem (octave_idx_type i, octave_idx_type j) const |
crefT | checkelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const |
crefT | checkelem (const Array< octave_idx_type > &ra_idx) const |
void | clear (void) |
void | clear (const dim_vector &dv) |
void | clear (octave_idx_type r, octave_idx_type c) |
Array< std::string > | column (octave_idx_type k) const |
Extract column: A(:,k+1). More... | |
octave_idx_type | compute_index (octave_idx_type i, octave_idx_type j) const |
octave_idx_type | compute_index (octave_idx_type i, octave_idx_type j, octave_idx_type k) const |
octave_idx_type | compute_index (const Array< octave_idx_type > &ra_idx) const |
octave_idx_type | compute_index_unchecked (const Array< octave_idx_type > &ra_idx) const |
const std::string * | data (void) const |
Array< std::string > | diag (octave_idx_type k=0) const |
Get the kth super or subdiagonal. More... | |
Array< std::string > | diag (octave_idx_type m, octave_idx_type n) const |
const dim_vector & | dims (void) const |
Return a const-reference so that dims ()(i) works efficiently. More... | |
std::string & | elem (octave_idx_type n) |
std::string & | elem (octave_idx_type i, octave_idx_type j) |
std::string & | elem (octave_idx_type i, octave_idx_type j, octave_idx_type k) |
std::string & | elem (const Array< octave_idx_type > &ra_idx) |
crefT | elem (octave_idx_type n) const |
crefT | elem (octave_idx_type i, octave_idx_type j) const |
crefT | elem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const |
crefT | elem (const Array< octave_idx_type > &ra_idx) const |
bool | empty (void) const |
void | fill (const std::string &val) |
Array< octave_idx_type > | find (octave_idx_type n=-1, bool backward=false) const |
Find indices of (at most n) nonzero elements. More... | |
const std::string * | fortran_vec (void) const |
std::string * | fortran_vec (void) |
Array< std::string > | hermitian (std::string(*fcn)(const std::string &)=0) const |
Array< std::string > & | insert (const Array< std::string > &a, const Array< octave_idx_type > &idx) |
Insert an array into another at a specified position. More... | |
Array< std::string > & | insert (const Array< std::string > &a, octave_idx_type r, octave_idx_type c) |
This is just a special case for idx = [r c 0 ...]. More... | |
Array< std::string > | ipermute (const Array< octave_idx_type > &vec) const |
bool | is_empty (void) const |
bool | is_shared (void) |
sortmode | is_sorted (sortmode mode=UNSORTED) const |
Ordering is auto-detected or can be specified. More... | |
sortmode | is_sorted_rows (sortmode mode=UNSORTED) const |
Ordering is auto-detected or can be specified. More... | |
bool | is_square (void) const |
bool | is_vector (void) const |
std::string | join (const std::string &sep=std::string()) const |
Array< std::string > | linear_slice (octave_idx_type lo, octave_idx_type up) const |
Extract a slice from this array as a column vector: A(:)(lo+1:up). More... | |
std::ostream & | list_in_columns (std::ostream &, int width=0, const std::string &prefix=std::string()) const |
octave_idx_type | lookup (const std::string &value, sortmode mode=UNSORTED) const |
Do a binary lookup in a sorted array. More... | |
Array< octave_idx_type > | lookup (const Array< std::string > &values, sortmode mode=UNSORTED) const |
Ditto, but for an array of values, specializing on the case when values are sorted. More... | |
void | make_unique (void) |
Array< U > | map (F fcn) const |
Apply function fcn to each element of the Array<T>. More... | |
octave_idx_type | max_length (void) const |
void | maybe_economize (void) |
void * | mex_get_data (void) const |
Give a pointer to the data in mex format. More... | |
int | ndims (void) const |
octave_idx_type | nnz (void) const |
Count nonzero elements. More... | |
Array< std::string > | nth_element (const idx_vector &n, int dim=0) const |
Returns the n-th element in increasing order, using the same ordering as used for sort. More... | |
std::string & | operator() (octave_idx_type n) |
std::string & | operator() (octave_idx_type i, octave_idx_type j) |
std::string & | operator() (octave_idx_type i, octave_idx_type j, octave_idx_type k) |
std::string & | operator() (const Array< octave_idx_type > &ra_idx) |
crefT | operator() (octave_idx_type n) const |
crefT | operator() (octave_idx_type i, octave_idx_type j) const |
crefT | operator() (octave_idx_type i, octave_idx_type j, octave_idx_type k) const |
crefT | operator() (const Array< octave_idx_type > &ra_idx) const |
string_vector & | operator= (const string_vector &s) |
std::string & | operator[] (octave_idx_type i) |
std::string | operator[] (octave_idx_type i) const |
bool | optimize_dimensions (const dim_vector &dv) |
Returns true if this->dims () == dv, and if so, replaces this->dimensions by a shallow copy of dv. More... | |
Array< std::string > | page (octave_idx_type k) const |
Extract page: A(:,:,k+1). More... | |
Array< std::string > | permute (const Array< octave_idx_type > &vec, bool inv=false) const |
void | print_info (std::ostream &os, const std::string &prefix) const |
Array< std::string > | reshape (octave_idx_type nr, octave_idx_type nc) const |
Array< std::string > | reshape (const dim_vector &new_dims) const |
void | resize (octave_idx_type n, const std::string &rfv=std::string()) |
virtual std::string | resize_fill_value (void) const |
string_vector & | sort (bool make_uniq=false) |
Array< std::string > | sort (int dim=0, sortmode mode=ASCENDING) const |
Array< std::string > | sort (Array< octave_idx_type > &sidx, int dim=0, sortmode mode=ASCENDING) const |
Array< octave_idx_type > | sort_rows_idx (sortmode mode=ASCENDING) const |
Sort by rows returns only indices. More... | |
Array< std::string > | squeeze (void) const |
Chop off leading singleton dimensions. More... | |
bool | test (F fcn) const |
Generic any/all test functionality with arbitrary predicate. More... | |
Array< std::string > | transpose (void) const |
string_vector & | uniq (void) |
std::string & | xelem (octave_idx_type n) |
crefT | xelem (octave_idx_type n) const |
std::string & | xelem (octave_idx_type i, octave_idx_type j) |
crefT | xelem (octave_idx_type i, octave_idx_type j) const |
std::string & | xelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) |
crefT | xelem (octave_idx_type i, octave_idx_type j, octave_idx_type k) const |
std::string & | xelem (const Array< octave_idx_type > &ra_idx) |
crefT | xelem (const Array< octave_idx_type > &ra_idx) const |
octave_idx_type | capacity (void) const |
Number of elements in the array. More... | |
octave_idx_type | length (void) const |
Number of elements in the array. More... | |
octave_idx_type | nelem (void) const |
Number of elements in the array. More... | |
octave_idx_type | numel (void) const |
Number of elements in the array. More... | |
First dimension | |
Get the first dimension of the array (number of rows) | |
octave_idx_type | dim1 (void) const |
octave_idx_type | rows (void) const |
Second dimension | |
Get the second dimension of the array (number of columns) | |
octave_idx_type | dim2 (void) const |
octave_idx_type | cols (void) const |
octave_idx_type | columns (void) const |
Third dimension | |
Get the third dimension of the array (number of pages) | |
octave_idx_type | dim3 (void) const |
octave_idx_type | pages (void) const |
Array< std::string > | index (const idx_vector &i) const |
Indexing without resizing. More... | |
Array< std::string > | index (const idx_vector &i, const idx_vector &j) const |
Array< std::string > | index (const Array< idx_vector > &ia) const |
Array< std::string > | index (const idx_vector &i, bool resize_ok, const std::string &rfv) const |
Indexing with possible resizing and fill. More... | |
Array< std::string > | index (const idx_vector &i, bool resize_ok) const |
Array< std::string > | index (const idx_vector &i, const idx_vector &j, bool resize_ok, const std::string &rfv) const |
Array< std::string > | index (const idx_vector &i, const idx_vector &j, bool resize_ok) const |
Array< std::string > | index (const Array< idx_vector > &ia, bool resize_ok, const std::string &rfv) const |
Array< std::string > | index (const Array< idx_vector > &ia, bool resize_ok) const |
void | resize2 (octave_idx_type nr, octave_idx_type nc, const std::string &rfv) |
Resizing (with fill). More... | |
void | resize2 (octave_idx_type nr, octave_idx_type nc) |
void | resize1 (octave_idx_type n, const std::string &rfv) |
void | resize1 (octave_idx_type n) |
void | resize (const dim_vector &dv, const std::string &rfv) |
void | resize (const dim_vector &dv) |
void | assign (const idx_vector &i, const Array< std::string > &rhs, const std::string &rfv) |
Indexed assignment (always with resize & fill). More... | |
void | assign (const idx_vector &i, const Array< std::string > &rhs) |
void | assign (const idx_vector &i, const idx_vector &j, const Array< std::string > &rhs, const std::string &rfv) |
void | assign (const idx_vector &i, const idx_vector &j, const Array< std::string > &rhs) |
void | assign (const Array< idx_vector > &ia, const Array< std::string > &rhs, const std::string &rfv) |
void | assign (const Array< idx_vector > &ia, const Array< std::string > &rhs) |
void | delete_elements (const idx_vector &i) |
Deleting elements. More... | |
void | delete_elements (int dim, const idx_vector &i) |
A(:,...,I,...,:) = [] (>= 2 subscripts, one of them is non-colon) More... | |
void | delete_elements (const Array< idx_vector > &ia) |
Dispatcher to the above two. More... | |
Array< U > | map (U(&fcn)(std::string)) const |
Overloads for function references. More... | |
Array< U > | map (U(&fcn)(const std::string &)) const |
bool | test_any (F fcn) const |
Simpler calls. More... | |
bool | test_all (F fcn) const |
bool | test_any (bool(&fcn)(std::string)) const |
Overloads for function references. More... | |
bool | test_any (bool(&fcn)(const std::string &)) const |
bool | test_all (bool(&fcn)(std::string)) const |
bool | test_all (bool(&fcn)(const std::string &)) const |
int * | jit_ref_count (void) |
WARNING: Only call these functions from jit. More... | |
std::string * | jit_slice_data (void) const |
octave_idx_type * | jit_dimensions (void) const |
void * | jit_array_rep (void) const |
Static Public Member Functions | |
static Array< std::string > | cat (int dim, octave_idx_type n, const Array< std::string > *array_list) |
Concatenation along a specified (0-based) dimension, equivalent to cat(). More... | |
static void | delete_c_str_vec (const char *const *) |
Protected Attributes | |
dim_vector | dimensions |
Array< std::string >::ArrayRep * | rep |
std::string * | slice_data |
octave_idx_type | slice_len |
|
inherited |
|
inlineexplicit |
|
inline |
|
inline |
string_vector::string_vector | ( | const std::list< std::string > & | lst | ) |
Definition at line 45 of file str-vec.cc.
References Array< std::string >::elem(), and resize().
string_vector::string_vector | ( | const std::set< std::string > & | lst | ) |
Definition at line 60 of file str-vec.cc.
References Array< std::string >::elem(), and resize().
|
inline |
string_vector::string_vector | ( | const char *const * | s | ) |
Definition at line 77 of file str-vec.cc.
References Array< std::string >::elem(), and resize().
string_vector::string_vector | ( | const char *const * | s, |
octave_idx_type | n | ||
) |
Definition at line 99 of file str-vec.cc.
References Array< std::string >::elem().
string_vector & string_vector::append | ( | const std::string & | s | ) |
Definition at line 140 of file str-vec.cc.
References Array< std::string >::elem(), Array< std::string >::length(), and resize().
Referenced by absolute_search(), regexp::compile_internal(), convert_linestyleorder_string(), convert_ticklabel_string(), dir_list_search(), string_array_property::do_set(), expand_amble(), F__ftp_mput__(), F__list_functions__(), Finline(), generate_completion(), hash_lookup(), kpse_db_search(), base_url_transfer::mput_directory(), parse_save_options(), path_find_first_of(), path_search(), reverse_lookup_autoload(), set_format_style(), and string_array_property::string_array_property().
string_vector & string_vector::append | ( | const string_vector & | sv | ) |
Definition at line 152 of file str-vec.cc.
References Array< std::string >::elem(), Array< T >::length(), Array< std::string >::length(), and resize().
|
inherited |
Indexed assignment (always with resize & fill).
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
char ** string_vector::c_str_vec | ( | void | ) | const |
Definition at line 187 of file str-vec.cc.
References Array< std::string >::elem(), Array< std::string >::length(), and strsave().
Referenced by octave_syscalls::execvp().
|
inlineinherited |
|
staticinherited |
Concatenation along a specified (0-based) dimension, equivalent to cat().
dim = -1 corresponds to dim = 0 and dim = -2 corresponds to dim = 1, but apply the looser matching rules of vertcat/horzcat.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
inherited |
Extract column: A(:,k+1).
|
inlineinherited |
|
inherited |
|
inherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
static |
Definition at line 202 of file str-vec.cc.
Referenced by octave_syscalls::execvp().
|
inherited |
Deleting elements.
A(I) = [] (with a single subscript)
|
inherited |
A(:,...,I,...,:) = [] (>= 2 subscripts, one of them is non-colon)
|
inherited |
Dispatcher to the above two.
|
inherited |
Get the kth super or subdiagonal.
The zeroth diagonal is the ordinary diagonal.
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 380 of file Array.h.
Referenced by append(), c_str_vec(), join(), list_in_columns(), string_vector(), and uniq().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
Definition at line 73 of file str-vec.h.
References jit_convention::length.
Referenced by array_concat(), octave_user_function::bind_automatic_vars(), load_path::do_display(), expand_amble(), Fcompletion_matches(), find_first_of(), hash_lookup(), kpse_path_find_first_of(), kpse_path_search(), log_search(), path_find_first_of(), path_search(), text_label_property::string_value(), tilde_find_prefix(), and tilde_find_suffix().
|
inherited |
|
inherited |
Find indices of (at most n) nonzero elements.
If n is specified, backward specifies search from backward.
|
inlineinherited |
|
inherited |
|
inherited |
|
inherited |
Indexing without resizing.
|
inherited |
|
inherited |
|
inherited |
Indexing with possible resizing and fill.
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inherited |
Insert an array into another at a specified position.
If size (a) is [d1 d2 ... dN] and idx is [i1 i2 ... iN], this method is equivalent to x(i1:i1+d1-1, i2:i2+d2-1, ... , iN:iN+dN-1) = a.
|
inherited |
This is just a special case for idx = [r c 0 ...].
|
inlineinherited |
Ordering is auto-detected or can be specified.
Ordering is auto-detected or can be specified.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
std::string string_vector::join | ( | const std::string & | sep = std::string () | ) | const |
Definition at line 167 of file str-vec.cc.
References Array< std::string >::elem(), and Array< std::string >::length().
Referenced by text::properties::update_text_extent().
|
inlineinherited |
Number of elements in the array.
Synonymous with capacity(), nelem(), and numel().
length
() at the Octave interpreter. At the Octave interpreter, the function length
() returns the length of the greatest dimension. This method returns the total number of elements. Definition at line 267 of file Array.h.
Referenced by append(), c_str_vec(), join(), list_in_columns(), sort(), and uniq().
|
inherited |
Extract a slice from this array as a column vector: A(:)(lo+1:up).
Must be 0 <= lo && up <= numel. May be up < lo.
std::ostream & string_vector::list_in_columns | ( | std::ostream & | os, |
int | width = 0 , |
||
const std::string & | prefix = std::string () |
||
) | const |
Definition at line 215 of file str-vec.cc.
References Array< std::string >::elem(), Array< std::string >::length(), and command_editor::terminal_cols().
Referenced by load_path::do_display(), do_load(), do_who(), Flist_in_columns(), Fpath(), and validate_property_name().
|
inherited |
Do a binary lookup in a sorted array.
Must not contain NaNs. Mode can be specified or is auto-detected by comparing 1st and last element.
|
inherited |
Ditto, but for an array of values, specializing on the case when values are sorted.
NaNs get the value N.
|
inlineinherited |
|
inline |
Definition at line 75 of file str-vec.h.
References elem, and jit_convention::length.
Referenced by octave_cell::all_strings(), Fchar(), and Fstrvcat().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Number of elements in the array.
Synonymous with capacity(), length(), and numel().
|
inherited |
Count nonzero elements.
|
inherited |
Returns the n-th element in increasing order, using the same ordering as used for sort.
n can either be a scalar index or a contiguous range.
|
inlineinherited |
Number of elements in the array.
Synonymous with capacity(), length(), and nelem().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
Definition at line 63 of file str-vec.h.
References Array< T >::operator=().
|
inline |
Definition at line 96 of file str-vec.h.
References Array< T >::elem().
|
inline |
Definition at line 99 of file str-vec.h.
References Array< T >::elem().
|
inherited |
Returns true if this->dims () == dv, and if so, replaces this->dimensions by a shallow copy of dv.
This is useful for maintaining several arrays with supposedly equal dimensions (e.g. structs in the interpreter).
|
inherited |
Extract page: A(:,:,k+1).
|
inlineinherited |
|
inherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
Definition at line 91 of file str-vec.h.
References Array< T >::resize().
Referenced by dir_path::all_directories(), octave_char_matrix_str::all_strings(), append(), load_path::do_find_all_first_of(), load_path::do_find_first_of(), octave_stream_list::do_get_info(), text_label_property::do_set(), do_who(), Fcompletion_matches(), Fexec(), Finline(), Fiskeyword(), Fpopen2(), dir_path::init(), intern_argv(), kpse_db_search(), curl_transfer::list(), octave_fcn_inline::load_ascii(), octave_fcn_inline::load_binary(), octave_fcn_inline::load_hdf5(), octave_value_list::make_argv(), octave_glob(), octave_group::octave_group(), string_vector(), text_label_property::text_label_property(), file_ops::tilde_expand(), and uniq().
|
inherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inherited |
Resizing (with fill).
|
inlineinherited |
|
virtualinherited |
|
inlineinherited |
string_vector & string_vector::sort | ( | bool | make_uniq = false | ) |
Definition at line 107 of file str-vec.cc.
References Array< std::string >::length(), octave_sort< T >::sort(), and uniq().
Referenced by F__list_functions__(), Finline(), Fiskeyword(), Freaddir(), generate_possible_completions(), genpath(), and octave_glob().
|
inherited |
|
inherited |
|
inherited |
Sort by rows returns only indices.
Chop off leading singleton dimensions.
string_vector & string_vector::uniq | ( | void | ) |
Definition at line 119 of file str-vec.cc.
References Array< std::string >::elem(), Array< std::string >::length(), and resize().
Referenced by sort().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |