Mercurial > octave
annotate libinterp/octave-value/ov-base-scalar.h @ 31225:3eab70385569
sparse-xpow.cc: Use faster multiplication technique, this time for complex
author | Arun Giridhar <arungiridhar@gmail.com> |
---|---|
date | Sun, 11 Sep 2022 13:53:38 -0400 |
parents | 796f54d4ddbf |
children | 597f3ee61a48 |
rev | line source |
---|---|
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
1 //////////////////////////////////////////////////////////////////////// |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
2 // |
30564
796f54d4ddbf
update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents:
30390
diff
changeset
|
3 // Copyright (C) 1996-2022 The Octave Project Developers |
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
4 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
5 // See the file COPYRIGHT.md in the top-level directory of this |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
6 // distribution or <https://octave.org/copyright/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
7 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
8 // This file is part of Octave. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
9 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
10 // Octave is free software: you can redistribute it and/or modify it |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
11 // under the terms of the GNU General Public License as published by |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
12 // the Free Software Foundation, either version 3 of the License, or |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
13 // (at your option) any later version. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
14 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
15 // Octave is distributed in the hope that it will be useful, but |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
16 // WITHOUT ANY WARRANTY; without even the implied warranty of |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
18 // GNU General Public License for more details. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
19 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
20 // You should have received a copy of the GNU General Public License |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
21 // along with Octave; see the file COPYING. If not, see |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
22 // <https://www.gnu.org/licenses/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
23 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
24 //////////////////////////////////////////////////////////////////////// |
3278 | 25 |
20791
f7084eae3318
maint: Use Octave coding conventions for #if statements.
Rik <rik@octave.org>
parents:
19697
diff
changeset
|
26 #if ! defined (octave_ov_base_scalar_h) |
17822
ebb3ef964372
maint: Use common #define syntax "octave_filename_h" in h_files.
Rik <rik@octave.org>
parents:
17787
diff
changeset
|
27 #define octave_ov_base_scalar_h 1 |
3278 | 28 |
21244
1473547f50f5
include octave-config.h in public header files
John W. Eaton <jwe@octave.org>
parents:
21139
diff
changeset
|
29 #include "octave-config.h" |
1473547f50f5
include octave-config.h in public header files
John W. Eaton <jwe@octave.org>
parents:
21139
diff
changeset
|
30 |
3278 | 31 #include <cstdlib> |
32 | |
8950
d865363208d6
include <iosfwd> instead of <iostream> in header files
John W. Eaton <jwe@octave.org>
parents:
8920
diff
changeset
|
33 #include <iosfwd> |
3278 | 34 #include <string> |
35 | |
36 #include "lo-mappers.h" | |
37 #include "lo-utils.h" | |
38 #include "str-vec.h" | |
6376 | 39 #include "MatrixType.h" |
3278 | 40 |
41 #include "ov-base.h" | |
42 #include "ov-typeinfo.h" | |
43 | |
44 // Real scalar values. | |
45 | |
21139
538b57866b90
consistently use "typename" intead of "class" in template declarations
John W. Eaton <jwe@octave.org>
parents:
20791
diff
changeset
|
46 template <typename ST> |
3278 | 47 class |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
48 OCTINTERP_API |
3278 | 49 octave_base_scalar : public octave_base_value |
50 { | |
51 public: | |
52 | |
28641
2c15231c3154
new typedefs for octave_value matrix and scalar types
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
53 typedef ST scalar_type; |
2c15231c3154
new typedefs for octave_value matrix and scalar types
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
54 |
3278 | 55 octave_base_scalar (void) |
11584
cda4aa780d58
Another round of initialising members in the constructor initialisation list
Pascal Dupuis <Pascal.Dupuis@uclouvain.be>
parents:
11570
diff
changeset
|
56 : octave_base_value (), scalar () { } |
3278 | 57 |
9686
5e433877634f
don't store MatrixType with scalars
Jaroslav Hajek <highegg@gmail.com>
parents:
8950
diff
changeset
|
58 octave_base_scalar (const ST& s) |
5e433877634f
don't store MatrixType with scalars
Jaroslav Hajek <highegg@gmail.com>
parents:
8950
diff
changeset
|
59 : octave_base_value (), scalar (s) { } |
3278 | 60 |
61 octave_base_scalar (const octave_base_scalar& s) | |
9686
5e433877634f
don't store MatrixType with scalars
Jaroslav Hajek <highegg@gmail.com>
parents:
8950
diff
changeset
|
62 : octave_base_value (), scalar (s.scalar) { } |
3278 | 63 |
22868
87e3163f6c87
use c++11 "= default" syntax for declaration of trivial destructors
John W. Eaton <jwe@octave.org>
parents:
22755
diff
changeset
|
64 ~octave_base_scalar (void) = default; |
3278 | 65 |
4759 | 66 octave_value squeeze (void) const { return scalar; } |
67 | |
8458
d254a21e0120
reimplement full as method of octave_base_value
Jaroslav Hajek <highegg@gmail.com>
parents:
8307
diff
changeset
|
68 octave_value full_value (void) const { return scalar; } |
d254a21e0120
reimplement full as method of octave_base_value
Jaroslav Hajek <highegg@gmail.com>
parents:
8307
diff
changeset
|
69 |
26916
9cd4b045fe3d
avoid some overloaded virtual warnings (bug #55741)
John W. Eaton <jwe@octave.org>
parents:
26386
diff
changeset
|
70 // We don't need to override all three forms of subsref. The using |
9cd4b045fe3d
avoid some overloaded virtual warnings (bug #55741)
John W. Eaton <jwe@octave.org>
parents:
26386
diff
changeset
|
71 // declaration will avoid warnings about partially-overloaded virtual |
9cd4b045fe3d
avoid some overloaded virtual warnings (bug #55741)
John W. Eaton <jwe@octave.org>
parents:
26386
diff
changeset
|
72 // functions. |
9cd4b045fe3d
avoid some overloaded virtual warnings (bug #55741)
John W. Eaton <jwe@octave.org>
parents:
26386
diff
changeset
|
73 using octave_base_value::subsref; |
9cd4b045fe3d
avoid some overloaded virtual warnings (bug #55741)
John W. Eaton <jwe@octave.org>
parents:
26386
diff
changeset
|
74 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
75 OCTINTERP_API octave_value |
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
76 subsref (const std::string& type, const std::list<octave_value_list>& idx); |
3933 | 77 |
7651
443a8f5a50fd
require both subsref variants to be defined in octave_value subclasses
John W. Eaton <jwe@octave.org>
parents:
7620
diff
changeset
|
78 octave_value_list subsref (const std::string& type, |
10313 | 79 const std::list<octave_value_list>& idx, int) |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
80 { return subsref (type, idx); } |
4271 | 81 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
82 OCTINTERP_API octave_value |
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
83 subsasgn (const std::string& type, const std::list<octave_value_list>& idx, |
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
84 const octave_value& rhs); |
3933 | 85 |
3278 | 86 bool is_constant (void) const { return true; } |
87 | |
88 bool is_defined (void) const { return true; } | |
89 | |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
90 OCTINTERP_API dim_vector dims (void) const; |
4563 | 91 |
10653
ec5fa46e0e45
override ndims and numel for scalars and matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
10545
diff
changeset
|
92 octave_idx_type numel (void) const { return 1; } |
ec5fa46e0e45
override ndims and numel for scalars and matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
10545
diff
changeset
|
93 |
ec5fa46e0e45
override ndims and numel for scalars and matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
10545
diff
changeset
|
94 int ndims (void) const { return 2; } |
ec5fa46e0e45
override ndims and numel for scalars and matrices
Jaroslav Hajek <highegg@gmail.com>
parents:
10545
diff
changeset
|
95 |
23450
855122b993da
maint: Wrap tertiary operator in parentheses "(COND ? x : y)".
Rik <rik@octave.org>
parents:
23446
diff
changeset
|
96 octave_idx_type nnz (void) const { return (scalar != ST () ? 1 : 0); } |
5602 | 97 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
98 OCTINTERP_API octave_value permute (const Array<int>&, bool = false) const; |
4875 | 99 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
100 OCTINTERP_API octave_value reshape (const dim_vector& new_dims) const; |
8307
ec969f3b8955
Add scalar reshape method
David Bateman <dbateman@free.fr>
parents:
7651
diff
changeset
|
101 |
29654
d13d090cb03a
use std::size_t and std::ptrdiff_t in C++ code (bug #60471)
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
102 std::size_t byte_size (void) const { return sizeof (ST); } |
4791 | 103 |
4901 | 104 octave_value all (int = 0) const { return (scalar != ST ()); } |
3278 | 105 |
4901 | 106 octave_value any (int = 0) const { return (scalar != ST ()); } |
3278 | 107 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
108 OCTINTERP_API octave_value diag (octave_idx_type k = 0) const; |
7620
36594d5bbe13
Move diag function into the octave_value class
David Bateman <dbateman@free.fr>
parents:
7433
diff
changeset
|
109 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
110 OCTINTERP_API octave_value diag (octave_idx_type m, octave_idx_type n) const; |
14557
e8e86ae3abbc
make diag (x, m, n) return a proper diagonal matrix object (bug #36099)
John W. Eaton <jwe@octave.org>
parents:
14464
diff
changeset
|
111 |
7433 | 112 octave_value sort (octave_idx_type, sortmode) const |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
113 { return octave_value (scalar); } |
30390
a61e1a0f6024
maint: style check C++ files in libinterp/ ahead of 7.1 release.
Rik <rik@octave.org>
parents:
30232
diff
changeset
|
114 octave_value sort (Array<octave_idx_type>& sidx, octave_idx_type, |
10313 | 115 sortmode) const |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
116 { |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
117 sidx.resize (dim_vector (1, 1)); |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
118 sidx(0) = 0; |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
119 return octave_value (scalar); |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
120 } |
7433 | 121 |
23588
0549061d35b9
maint: Deprecate is_sorted and replace with issorted.
Rik <rik@octave.org>
parents:
23586
diff
changeset
|
122 sortmode issorted (sortmode mode = UNSORTED) const |
26386
bdcb5c1aaf4f
ov-base-scalar.h: Fix static analyzer detected issues (bug #55347).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
123 { return mode == UNSORTED ? ASCENDING : mode; } |
8721
e9cb742df9eb
imported patch sort3.diff
Jaroslav Hajek <highegg@gmail.com>
parents:
8626
diff
changeset
|
124 |
8733
3ef774603887
rename all uses of sortrows_idx to sort_rows_idx
John W. Eaton <jwe@octave.org>
parents:
8721
diff
changeset
|
125 Array<octave_idx_type> sort_rows_idx (sortmode) const |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
126 { |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
127 return Array<octave_idx_type> (dim_vector (1, 1), |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
128 static_cast<octave_idx_type> (0)); |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
129 } |
8721
e9cb742df9eb
imported patch sort3.diff
Jaroslav Hajek <highegg@gmail.com>
parents:
8626
diff
changeset
|
130 |
8734
767ed8cc6634
rename internal issorted and issorted_rows functions to is_sorted and is_sorted_rows
John W. Eaton <jwe@octave.org>
parents:
8733
diff
changeset
|
131 sortmode is_sorted_rows (sortmode mode = UNSORTED) const |
26386
bdcb5c1aaf4f
ov-base-scalar.h: Fix static analyzer detected issues (bug #55347).
Rik <rik@octave.org>
parents:
26376
diff
changeset
|
132 { return mode == UNSORTED ? ASCENDING : mode; } |
8721
e9cb742df9eb
imported patch sort3.diff
Jaroslav Hajek <highegg@gmail.com>
parents:
8626
diff
changeset
|
133 |
9686
5e433877634f
don't store MatrixType with scalars
Jaroslav Hajek <highegg@gmail.com>
parents:
8950
diff
changeset
|
134 MatrixType matrix_type (void) const { return MatrixType::Diagonal; } |
5e433877634f
don't store MatrixType with scalars
Jaroslav Hajek <highegg@gmail.com>
parents:
8950
diff
changeset
|
135 MatrixType matrix_type (const MatrixType&) const |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
136 { return matrix_type (); } |
6376 | 137 |
3278 | 138 bool is_scalar_type (void) const { return true; } |
139 | |
23586
f6c5db0a02e7
maint: Deprecate is_numeric_type and replace with isnumeric.
Rik <rik@octave.org>
parents:
23502
diff
changeset
|
140 bool isnumeric (void) const { return true; } |
3278 | 141 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
142 OCTINTERP_API bool is_true (void) const; |
3278 | 143 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
144 OCTINTERP_API void print (std::ostream& os, bool pr_as_read_syntax = false); |
3278 | 145 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
146 OCTINTERP_API void |
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
147 print_raw (std::ostream& os, bool pr_as_read_syntax = false) const; |
3278 | 148 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
149 OCTINTERP_API bool |
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
150 print_name_tag (std::ostream& os, const std::string& name) const; |
3278 | 151 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
152 OCTINTERP_API void short_disp (std::ostream& os) const; |
16468
0f143f68078d
use signal/slot for updating workspace instead of using event listener
John W. Eaton <jwe@octave.org>
parents:
15195
diff
changeset
|
153 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
154 OCTINTERP_API float_display_format get_edit_display_format (void) const; |
24745
d2467914ce33
enable (or improve) display for more types in the variable editor
John W. Eaton <jwe@octave.org>
parents:
24668
diff
changeset
|
155 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
156 OCTINTERP_API std::string |
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
157 edit_display (const float_display_format& fmt, |
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
158 octave_idx_type i, octave_idx_type j) const; |
24643
78aff6f14227
more variable editor improvements; allow more variable types to be edited
John W. Eaton <jwe@octave.org>
parents:
24534
diff
changeset
|
159 |
30232
a2936935c7c8
attempt to limit possible const_cast damage
John W. Eaton <jwe@octave.org>
parents:
29655
diff
changeset
|
160 // This function exists to support the MEX interface. |
5900 | 161 // You should not use it anywhere else. |
30232
a2936935c7c8
attempt to limit possible const_cast damage
John W. Eaton <jwe@octave.org>
parents:
29655
diff
changeset
|
162 const void * mex_get_data (void) const { return &scalar; } |
5900 | 163 |
10670
654fbde5dceb
make cellfun's fast scalar collection mechanism public
Jaroslav Hajek <highegg@gmail.com>
parents:
10653
diff
changeset
|
164 const ST& scalar_ref (void) const { return scalar; } |
654fbde5dceb
make cellfun's fast scalar collection mechanism public
Jaroslav Hajek <highegg@gmail.com>
parents:
10653
diff
changeset
|
165 |
654fbde5dceb
make cellfun's fast scalar collection mechanism public
Jaroslav Hajek <highegg@gmail.com>
parents:
10653
diff
changeset
|
166 ST& scalar_ref (void) { return scalar; } |
654fbde5dceb
make cellfun's fast scalar collection mechanism public
Jaroslav Hajek <highegg@gmail.com>
parents:
10653
diff
changeset
|
167 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
168 OCTINTERP_API octave_value fast_elem_extract (octave_idx_type n) const; |
18650
491b0adfec95
compatibility fixes for printf integer format specifiers
John W. Eaton <jwe@octave.org>
parents:
18416
diff
changeset
|
169 |
29234
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
170 OCTINTERP_API bool |
853e60367cb6
Set API tags in files in libinterp/octave-value (patch #8919).
Markus Mützel <markus.muetzel@gmx.de>
parents:
28641
diff
changeset
|
171 fast_elem_insert_self (void *where, builtin_type_t btyp) const; |
10670
654fbde5dceb
make cellfun's fast scalar collection mechanism public
Jaroslav Hajek <highegg@gmail.com>
parents:
10653
diff
changeset
|
172 |
3278 | 173 protected: |
174 | |
175 // The value of this scalar. | |
176 ST scalar; | |
177 }; | |
178 | |
179 #endif |