GNU Octave  4.2.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
comment-list.h
Go to the documentation of this file.
1 /*
2 
3 Copyright (C) 2000-2017 John W. Eaton
4 
5 This file is part of Octave.
6 
7 Octave is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by the
9 Free Software Foundation; either version 3 of the License, or (at your
10 option) any later version.
11 
12 Octave is distributed in the hope that it will be useful, but WITHOUT
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with Octave; see the file COPYING. If not, see
19 <http://www.gnu.org/licenses/>.
20 
21 */
22 
23 #if ! defined (octave_comment_list_h)
24 #define octave_comment_list_h 1
25 
26 #include "octave-config.h"
27 
28 #include <string>
29 
30 #include "base-list.h"
31 
32 extern std::string get_comment_text (void);
33 
34 extern char *get_comment_text_c_str (void);
35 
36 extern void save_comment_text (const std::string& text);
37 
38 class
40 {
41 public:
42 
44  {
50  copyright
51  };
52 
54  comment_type t = unknown)
55  : txt (s), typ (t) { }
56 
58  : txt (oc.txt), typ (oc.typ) { }
59 
61  {
62  if (this != &oc)
63  {
64  txt = oc.txt;
65  typ = oc.typ;
66  }
67 
68  return *this;
69  }
70 
71  std::string text (void) const { return txt; }
72 
73  comment_type type (void) const { return typ; }
74 
76 
77 private:
78 
79  // The text of the comment.
81 
82  // The type of comment.
84 };
85 
86 class
88 {
89 public:
90 
92 
93  void append (const octave_comment_elt& elt)
95 
96  void append (const std::string& s,
98  { append (octave_comment_elt (s, t)); }
99 
100  octave_comment_list *dup (void) const;
101 };
102 
103 #endif
comment_type type(void) const
Definition: comment-list.h:73
octave_comment_elt(const octave_comment_elt &oc)
Definition: comment-list.h:57
OCTAVE_EXPORT octave_value_list return the number of command line arguments passed to Octave If called with the optional argument the function t
Definition: ov-usr-fcn.cc:935
s
Definition: file-io.cc:2682
void append(const std::string &s, octave_comment_elt::comment_type t=octave_comment_elt::unknown)
Definition: comment-list.h:96
comment_type typ
Definition: comment-list.h:83
std::string txt
Definition: comment-list.h:80
octave_comment_elt(const std::string &s="", comment_type t=unknown)
Definition: comment-list.h:53
bool append
Definition: load-save.cc:1582
char * get_comment_text_c_str(void)
std::string get_comment_text(void)
std::string text(void) const
Definition: comment-list.h:71
void save_comment_text(const std::string &text)
void append(const elt_type &s)
Definition: base-list.h:110
void append(const octave_comment_elt &elt)
Definition: comment-list.h:93
If this string is the system will ring the terminal sometimes it is useful to be able to print the original representation of the string
Definition: utils.cc:854
octave_value_list & operator=(const octave_value_list &obj)
Definition: ovl.h:75