GNU Octave  6.2.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(), retval, and strsave().

Referenced by octave::sys::execvp(), and octave::sys::popen2().

◆ delete_c_str_vec()

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

◆ 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 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, numel(), and retval.

Referenced by text::properties::update_text_extent().

◆ 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.

◆ 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(), octave::interpreter::interpreter(), octave_fields::octave_fields(), octave::load_path::package_info::add_to_fcn_map(), append(), c_str_vec(), octave::symbol_cleaner::clear_symbols(), octave::call_stack::do_global_who_two(), octave::history_system::do_history(), string_array_property::do_set(), do_strcmp_fun(), octave::opengl_renderer::draw_axes_x_grid(), octave::opengl_renderer::draw_axes_y_grid(), octave::opengl_renderer::draw_axes_z_grid(), octave::interpreter::execute_command_line_file(), extract_keyword(), F__ftp_dir__(), F__ftp_mget__(), F__ftp_mput__(), F__magick_finfo__(), F__restful_service__(), Fchar(), Fexec(), octave::symbol_info_accumulator::filter(), octave::load_path::find_all_first_of(), octave::load_path::find_file(), octave::load_path::find_first_of(), octave::sys::fnmatch(), Fpopen2(), QtHandles::Utils::fromStringVector(), Fstrvcat(), octave::genpath(), octave::load_path::dir_info::get_file_list(), QtHandles::qt_graphics_toolkit::get_text_extent(), octave::sys::glob(), octave::application::intern_argv(), octave::regexp::is_match(), join(), list_in_columns(), octave::make_absolute(), glob_match::match(), octave::base_url_transfer::mget_directory(), octave::mk_tmp_hist_file(), octave::load_path::package_info::move_fcn_map(), octave::base_url_transfer::mput_directory(), octregexp(), octave::load_save_system::parse_save_options(), octave::load_path::path(), octave_struct::print_raw(), octave_scalar_struct::print_raw(), octave::sys::recursive_rmdir(), octave::load_path::package_info::remove_fcn_map(), octave::opengl_renderer::render_ticktexts(), octave::load_save_system::save(), octave::search_path_for_all_files(), sort(), std_list(), string_array_property::string_value(), octave_cell::string_vector_value(), octave::sys::file_ops::tilde_expand(), octave::tilde_find_prefix(), octave::tilde_find_suffix(), uniq(), octave::file_editor_tab::update_lexer_settings(), octave::tree_evaluator::visit_complex_for_command(), octave::sys::windows_glob(), and octave::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()

string_vector & string_vector::sort ( bool  make_uniq = false)

◆ std_list()

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

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

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

Referenced by octave::search_path_for_all_files(), and octave::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.

◆ 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: