Mercurial > octave-nkf
diff src/ov-base-scalar.cc @ 10670:654fbde5dceb
make cellfun's fast scalar collection mechanism public
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Fri, 28 May 2010 12:28:06 +0200 |
parents | ffe28cdc6fe2 |
children | 7fa044155982 |
line wrap: on
line diff
--- a/src/ov-base-scalar.cc Thu May 27 20:12:51 2010 -0700 +++ b/src/ov-base-scalar.cc Fri May 28 12:28:06 2010 +0200 @@ -154,3 +154,18 @@ os << name << " = "; return false; } + +template <class ST> +bool +octave_base_scalar<ST>::fast_elem_insert_self (void *where, builtin_type_t btyp) const +{ + + // Don't use builtin_type () here to avoid an extra VM call. + if (btyp == class_to_btyp<ST>::btyp) + { + *(reinterpret_cast<ST *>(where)) = scalar; + return true; + } + else + return false; +}