comparison libinterp/corefcn/xdiv.cc @ 21139:538b57866b90

consistently use "typename" intead of "class" in template declarations * Object.h, QtHandlesUtils.cc, QtHandlesUtils.h, ToolBarButton.cc, ToolBarButton.h, Cell.h, __lin_interpn__.cc, bitfcns.cc, bsxfun.cc, cellfun.cc, data.cc, filter.cc, gcd.cc, graphics.cc, help.cc, kron.cc, lookup.cc, ls-mat5.cc, ls-oct-text.h, lu.cc, max.cc, mgorth.cc, oct-map.cc, oct-map.h, oct-stream.cc, oct-stream.h, octave-link.h, pr-output.cc, profiler.h, schur.cc, sparse-xdiv.cc, sparse-xpow.cc, sqrtm.cc, symtab.h, tril.cc, typecast.cc, variables.cc, xdiv.cc, zfstream.h, __init_fltk__.cc, __magick_read__.cc, chol.cc, qr.cc, ov-base-diag.cc, ov-base-diag.h, ov-base-int.cc, ov-base-int.h, ov-base-mat.cc, ov-base-mat.h, ov-base-scalar.cc, ov-base-scalar.h, ov-base-sparse.cc, ov-base-sparse.h, ov-base.h, ov-classdef.cc, ov-int-traits.h, ov-java.h, ov-usr-fcn.h, ov.cc, ov.h, op-dms-template.cc, oct-parse.in.yy, parse.h, pt-mat.cc, Array-b.cc, Array.cc, Array.h, CDiagMatrix.h, CMatrix.h, CNDArray.h, DiagArray2.cc, DiagArray2.h, MArray.cc, MArray.h, MDiagArray2.cc, MDiagArray2.h, MSparse.cc, MSparse.h, MatrixType.cc, Sparse.cc, Sparse.h, dDiagMatrix.h, dMatrix.h, dNDArray.h, fCDiagMatrix.h, fCMatrix.h, fCNDArray.h, fDiagMatrix.h, fMatrix.h, fNDArray.h, idx-vector.cc, idx-vector.h, intNDArray.cc, intNDArray.h, DET.h, base-aepbal.h, base-lu.cc, base-lu.h, base-qr.cc, base-qr.h, bsxfun-defs.cc, eigs-base.cc, lo-mappers.h, lo-specfun.cc, lo-specfun.h, oct-convn.cc, oct-fftw.cc, oct-norm.cc, sparse-base-chol.cc, sparse-base-chol.h, sparse-base-lu.cc, sparse-base-lu.h, sparse-dmsolve.cc, mx-inlines.cc, action-container.h, base-list.h, lo-traits.h, lo-utils.h, oct-base64.h, oct-binmap.h, oct-cmplx.h, oct-inttypes.cc, oct-inttypes.h, oct-locbuf.h, oct-refcount.h, oct-sort.cc, oct-sort.h: Use "typename" instead of "class" in template declarations.
author John W. Eaton <jwe@octave.org>
date Sun, 24 Jan 2016 13:50:04 -0500
parents 358aa7fcbd33
children fcac5dbbf9ed
comparison
equal deleted inserted replaced
21138:e2fca7d79169 21139:538b57866b90
60 solve_singularity_warning (double rcond) 60 solve_singularity_warning (double rcond)
61 { 61 {
62 warn_singular_matrix (rcond); 62 warn_singular_matrix (rcond);
63 } 63 }
64 64
65 template <class T1, class T2> 65 template <typename T1, typename T2>
66 bool 66 bool
67 mx_leftdiv_conform (const T1& a, const T2& b, blas_trans_type blas_trans) 67 mx_leftdiv_conform (const T1& a, const T2& b, blas_trans_type blas_trans)
68 { 68 {
69 octave_idx_type a_nr = blas_trans == blas_no_trans ? a.rows () : a.cols (); 69 octave_idx_type a_nr = blas_trans == blas_no_trans ? a.rows () : a.cols ();
70 octave_idx_type b_nr = b.rows (); 70 octave_idx_type b_nr = b.rows ();
87 INSTANTIATE_MX_LEFTDIV_CONFORM (Matrix, Matrix); 87 INSTANTIATE_MX_LEFTDIV_CONFORM (Matrix, Matrix);
88 INSTANTIATE_MX_LEFTDIV_CONFORM (Matrix, ComplexMatrix); 88 INSTANTIATE_MX_LEFTDIV_CONFORM (Matrix, ComplexMatrix);
89 INSTANTIATE_MX_LEFTDIV_CONFORM (ComplexMatrix, Matrix); 89 INSTANTIATE_MX_LEFTDIV_CONFORM (ComplexMatrix, Matrix);
90 INSTANTIATE_MX_LEFTDIV_CONFORM (ComplexMatrix, ComplexMatrix); 90 INSTANTIATE_MX_LEFTDIV_CONFORM (ComplexMatrix, ComplexMatrix);
91 91
92 template <class T1, class T2> 92 template <typename T1, typename T2>
93 bool 93 bool
94 mx_div_conform (const T1& a, const T2& b) 94 mx_div_conform (const T1& a, const T2& b)
95 { 95 {
96 octave_idx_type a_nc = a.cols (); 96 octave_idx_type a_nc = a.cols ();
97 octave_idx_type b_nc = b.cols (); 97 octave_idx_type b_nc = b.cols ();
701 return a.solve (typ, b, info, rcond, solve_singularity_warning, true, transt); 701 return a.solve (typ, b, info, rcond, solve_singularity_warning, true, transt);
702 } 702 }
703 703
704 // Diagonal matrix division. 704 // Diagonal matrix division.
705 705
706 template <class MT, class DMT> 706 template <typename MT, typename DMT>
707 MT 707 MT
708 mdm_div_impl (const MT& a, const DMT& d) 708 mdm_div_impl (const MT& a, const DMT& d)
709 { 709 {
710 if (! mx_div_conform (a, d)) 710 if (! mx_div_conform (a, d))
711 return MT (); 711 return MT ();
784 // -*- 3 -*- 784 // -*- 3 -*-
785 FloatComplexMatrix 785 FloatComplexMatrix
786 xdiv (const FloatComplexMatrix& a, const FloatComplexDiagMatrix& b) 786 xdiv (const FloatComplexMatrix& a, const FloatComplexDiagMatrix& b)
787 { return mdm_div_impl (a, b); } 787 { return mdm_div_impl (a, b); }
788 788
789 template <class MT, class DMT> 789 template <typename MT, typename DMT>
790 MT 790 MT
791 dmm_leftdiv_impl (const DMT& d, const MT& a) 791 dmm_leftdiv_impl (const DMT& d, const MT& a)
792 { 792 {
793 if (! mx_leftdiv_conform (d, a, blas_no_trans)) 793 if (! mx_leftdiv_conform (d, a, blas_no_trans))
794 return MT (); 794 return MT ();
864 xleftdiv (const FloatComplexDiagMatrix& a, const FloatComplexMatrix& b) 864 xleftdiv (const FloatComplexDiagMatrix& a, const FloatComplexMatrix& b)
865 { return dmm_leftdiv_impl (a, b); } 865 { return dmm_leftdiv_impl (a, b); }
866 866
867 // Diagonal by diagonal matrix division. 867 // Diagonal by diagonal matrix division.
868 868
869 template <class MT, class DMT> 869 template <typename MT, typename DMT>
870 MT 870 MT
871 dmdm_div_impl (const MT& a, const DMT& d) 871 dmdm_div_impl (const MT& a, const DMT& d)
872 { 872 {
873 if (! mx_div_conform (a, d)) 873 if (! mx_div_conform (a, d))
874 return MT (); 874 return MT ();
939 // -*- 3 -*- 939 // -*- 3 -*-
940 FloatComplexDiagMatrix 940 FloatComplexDiagMatrix
941 xdiv (const FloatComplexDiagMatrix& a, const FloatComplexDiagMatrix& b) 941 xdiv (const FloatComplexDiagMatrix& a, const FloatComplexDiagMatrix& b)
942 { return dmdm_div_impl (a, b); } 942 { return dmdm_div_impl (a, b); }
943 943
944 template <class MT, class DMT> 944 template <typename MT, typename DMT>
945 MT 945 MT
946 dmdm_leftdiv_impl (const DMT& d, const MT& a) 946 dmdm_leftdiv_impl (const DMT& d, const MT& a)
947 { 947 {
948 if (! mx_leftdiv_conform (d, a, blas_no_trans)) 948 if (! mx_leftdiv_conform (d, a, blas_no_trans))
949 return MT (); 949 return MT ();