GNU Octave  8.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
string_vector Class Reference

#include "str-vec.h"

Collaboration diagram for string_vector:

Public Member Functions

 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 (const char *s)
 
 string_vector (const std::string &s)
 
template<template< typename... > class String_Container, typename... Other>
 string_vector (const String_Container< std::string, Other... > &lst)
 Constructor for STL containers of std::string. More...
 
 string_vector (const string_vector &)=default
 
 string_vector (octave_idx_type n)
 
 string_vector (string_vector &&)=default
 
 string_vector (void)=default
 
 ~string_vector (void)=default
 
string_vectorappend (const std::string &s)
 
string_vectorappend (const string_vector &sv)
 
char ** c_str_vec (void) const
 
std::string & elem (octave_idx_type i)
 
std::string elem (octave_idx_type i) const
 
bool empty (void) const
 
bool isempty (void) const
 
std::string join (const std::string &sep="") const
 
string_vector linear_slice (octave_idx_type lo, octave_idx_type up) const
 
std::ostream & list_in_columns (std::ostream &, int width=0, const std::string &prefix="") const
 
template<typename U , typename F >
Array< U > map (F fcn) const
 
octave_idx_type max_length (void) const
 
octave_idx_type numel (void) const
 
std::string & operator() (octave_idx_type i)
 
std::string operator() (octave_idx_type i) const
 
string_vectoroperator= (const string_vector &)=default
 
string_vectoroperator= (string_vector &&)=default
 
std::string & operator[] (octave_idx_type i)
 
std::string operator[] (octave_idx_type i) const
 
void resize (octave_idx_type n, const std::string &rfv="")
 
string_vectorsort (bool make_uniq=false)
 
std::list< std::string > std_list (void) const
 
string_vectoruniq (void)
 
std::string & xelem (octave_idx_type i)
 
std::string xelem (octave_idx_type i) const
 

Static Public Member Functions

static void delete_c_str_vec (const char *const *)
 

Private Attributes

Array< std::string > m_data
 

Detailed Description

Definition at line 37 of file str-vec.h.

Constructor & Destructor Documentation

◆ string_vector() [1/10]

string_vector::string_vector ( void  )
default

◆ string_vector() [2/10]

string_vector::string_vector ( octave_idx_type  n)
inlineexplicit

Definition at line 45 of file str-vec.h.

◆ string_vector() [3/10]

string_vector::string_vector ( const char *  s)
inline

Definition at line 47 of file str-vec.h.

◆ string_vector() [4/10]

string_vector::string_vector ( const std::string &  s)
inline

Definition at line 49 of file str-vec.h.

◆ string_vector() [5/10]

string_vector::string_vector ( const string_vector )
default

◆ string_vector() [6/10]

string_vector::string_vector ( string_vector &&  )
default

◆ string_vector() [7/10]

template<template< typename... > class String_Container, typename... Other>
string_vector::string_vector ( const String_Container< std::string, Other... > &  lst)

Constructor for STL containers of std::string.

Templated constructor for any template class with std::string as the first parameter, and begin, end, and size methods, i.e., a class with similar interface as the STL containers.

Definition at line 157 of file str-vec.h.

References elem(), and resize().

◆ string_vector() [8/10]

string_vector::string_vector ( const Array< std::string > &  s)
inline

Definition at line 64 of file str-vec.h.

◆ string_vector() [9/10]

string_vector::string_vector ( const char *const *  s)

Definition at line 47 of file str-vec.cc.

References elem(), n, and resize().

◆ string_vector() [10/10]

string_vector::string_vector ( const char *const *  s,
octave_idx_type  n 
)

Definition at line 69 of file str-vec.cc.

References elem(), and n.

◆ ~string_vector()

string_vector::~string_vector ( void  )
default

Member Function Documentation

◆ append() [1/2]

◆ append() [2/2]

string_vector & string_vector::append ( const string_vector sv)

Definition at line 122 of file str-vec.cc.

References elem(), len, numel(), and resize().

◆ c_str_vec()

char ** string_vector::c_str_vec ( void  ) const

Definition at line 157 of file str-vec.cc.

References elem(), len, numel(), and strsave().

Referenced by execvp(), and popen2().

◆ delete_c_str_vec()

void string_vector::delete_c_str_vec ( const char *const *  v)
static

Definition at line 185 of file str-vec.cc.

Referenced by base_qobject::~base_qobject(), execvp(), and popen2().

◆ elem() [1/2]

std::string& string_vector::elem ( octave_idx_type  i)
inline

Definition at line 104 of file str-vec.h.

Referenced by string_vector(), append(), c_str_vec(), join(), list_in_columns(), std_list(), and uniq().

◆ elem() [2/2]

std::string string_vector::elem ( octave_idx_type  i) const
inline

Definition at line 106 of file str-vec.h.

◆ empty()

◆ isempty()

bool string_vector::isempty ( void  ) const
inline

Definition at line 102 of file str-vec.h.

Referenced by tree_index_expression::evaluate_n(), F__fieldnames__(), and Fcellstr().

◆ join()

std::string string_vector::join ( const std::string &  sep = "") const

Definition at line 137 of file str-vec.cc.

References elem(), len, and numel().

◆ linear_slice()

string_vector string_vector::linear_slice ( octave_idx_type  lo,
octave_idx_type  up 
) const
inline

Definition at line 140 of file str-vec.h.

Referenced by octave_value_list::slice().

◆ list_in_columns()

std::ostream & string_vector::list_in_columns ( std::ostream &  os,
int  width = 0,
const std::string &  prefix = "" 
) const

◆ map()

template<typename U , typename F >
Array<U> string_vector::map ( fcn) const
inline

Definition at line 145 of file str-vec.h.

Referenced by Fstr2double().

◆ max_length()

octave_idx_type string_vector::max_length ( void  ) const
inline

Definition at line 79 of file str-vec.h.

References elem, n, and numel().

Referenced by Fchar(), Fstrvcat(), and octave_cell::string_vector_value().

◆ numel()

octave_idx_type string_vector::numel ( void  ) const
inline

Definition at line 100 of file str-vec.h.

Referenced by Cell::Cell(), interpreter::interpreter(), octave_fields::octave_fields(), load_path::package_info::add_to_fcn_map(), append(), c_str_vec(), symbol_cleaner::clear_symbols(), call_stack::do_global_who_two(), do_strcmp_fcn(), opengl_renderer::draw_axes_x_grid(), opengl_renderer::draw_axes_y_grid(), opengl_renderer::draw_axes_z_grid(), interpreter::execute_command_line_file(), extract_keyword(), F__ftp_dir__(), F__ftp_mget__(), F__ftp_mput__(), F__magick_finfo__(), F__restful_service__(), Fchar(), Fexec(), load_path::files(), symbol_info_accumulator::filter(), load_path::find_all_first_of(), load_path::find_file(), load_path::find_first_of(), fnmatch(), Fpopen2(), Utils::fromStringVector(), Fstrvcat(), generate_completion(), genpath(), load_path::dir_info::get_file_list(), qt_graphics_toolkit::get_text_extent(), glob(), application::intern_argv(), regexp::is_match(), join(), list_in_columns(), make_absolute(), glob_match::match(), base_url_transfer::mget_directory(), mk_tmp_hist_file(), load_path::package_info::move_fcn_map(), base_url_transfer::mput_directory(), octregexp(), load_save_system::parse_save_options(), load_path::path(), octave_struct::print_raw(), octave_scalar_struct::print_raw(), recursive_rmdir(), load_path::package_info::remove_fcn_map(), opengl_renderer::render_ticktexts(), load_save_system::save(), search_path_for_all_files(), qt_interpreter_events::set_history(), sort(), std_list(), octave_cell::string_vector_value(), subdirs_modified(), tilde_expand(), tilde_find_prefix(), tilde_find_suffix(), uniq(), file_editor_tab::update_lexer_settings(), tree_evaluator::visit_complex_for_command(), windows_glob(), and xzip().

◆ operator()() [1/2]

std::string& string_vector::operator() ( octave_idx_type  i)
inline

Definition at line 116 of file str-vec.h.

References elem.

◆ operator()() [2/2]

std::string string_vector::operator() ( octave_idx_type  i) const
inline

Definition at line 118 of file str-vec.h.

References elem.

◆ operator=() [1/2]

string_vector& string_vector::operator= ( const string_vector )
default

◆ operator=() [2/2]

string_vector& string_vector::operator= ( string_vector &&  )
default

◆ operator[]() [1/2]

std::string& string_vector::operator[] ( octave_idx_type  i)
inline

Definition at line 112 of file str-vec.h.

References elem.

◆ operator[]() [2/2]

std::string string_vector::operator[] ( octave_idx_type  i) const
inline

Definition at line 114 of file str-vec.h.

References elem.

◆ resize()

◆ sort()

◆ std_list()

std::list< std::string > string_vector::std_list ( void  ) const

Definition at line 172 of file str-vec.cc.

References elem(), len, and numel().

Referenced by search_path_for_all_files(), and search_path_for_file().

◆ uniq()

string_vector & string_vector::uniq ( void  )

Definition at line 89 of file str-vec.cc.

References elem(), len, numel(), and resize().

Referenced by sort().

◆ xelem() [1/2]

std::string& string_vector::xelem ( octave_idx_type  i)
inline

Definition at line 108 of file str-vec.h.

Referenced by octave_fields::fieldnames(), and Cell::string_vector_value().

◆ xelem() [2/2]

std::string string_vector::xelem ( octave_idx_type  i) const
inline

Definition at line 110 of file str-vec.h.

Member Data Documentation

◆ m_data

Array<std::string> string_vector::m_data
private

Definition at line 152 of file str-vec.h.

Referenced by sort().


The documentation for this class was generated from the following files: