Mercurial > hg > octave-nkf
annotate scripts/general/isequalwithequalnans.m @ 11523:fd0a3ac60b0e
update copyright notices
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 14 Jan 2011 05:47:45 -0500 |
parents | c776f063fefe |
children | 132c89bb44e3 |
rev | line source |
---|---|
11523 | 1 ## Copyright (C) 2005-2011 William Poetra Yoga Hadisoeseno |
5549 | 2 ## |
3 ## This file is part of Octave. | |
4 ## | |
7016 | 5 ## Octave is free software; you can redistribute it and/or modify it |
6 ## under the terms of the GNU General Public License as published by | |
7 ## the Free Software Foundation; either version 3 of the License, or (at | |
8 ## your option) any later version. | |
5549 | 9 ## |
7016 | 10 ## Octave is distributed in the hope that it will be useful, but |
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 ## General Public License for more details. | |
5549 | 14 ## |
15 ## You should have received a copy of the GNU General Public License | |
7016 | 16 ## along with Octave; see the file COPYING. If not, see |
17 ## <http://www.gnu.org/licenses/>. | |
5549 | 18 |
19 ## -*- texinfo -*- | |
5550 | 20 ## @deftypefn {Function File} {} isequalwithequalnans (@var{x1}, @var{x2}, @dots{}) |
21 ## Assuming NaN == NaN, return true if all of @var{x1}, @var{x2}, @dots{} | |
22 ## are equal. | |
5642 | 23 ## @seealso{isequal} |
5549 | 24 ## @end deftypefn |
25 | |
11469
c776f063fefe
Overhaul m-script files to use common variable name between code and documentation.
Rik <octave@nomad.inbox5.com>
parents:
11358
diff
changeset
|
26 function retval = isequalwithequalnans (x1, varargin) |
5549 | 27 |
5550 | 28 if (nargin > 1) |
11469
c776f063fefe
Overhaul m-script files to use common variable name between code and documentation.
Rik <octave@nomad.inbox5.com>
parents:
11358
diff
changeset
|
29 retval = __isequal__ (true, x1, varargin{:}); |
5550 | 30 else |
6046 | 31 print_usage (); |
5550 | 32 endif |
5549 | 33 |
34 endfunction | |
35 | |
9899
9f25290a35e8
more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents:
7017
diff
changeset
|
36 ## test for equality |
9f25290a35e8
more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents:
7017
diff
changeset
|
37 %!assert(isequalwithequalnans({1,2,NaN,4},{1,2,NaN,4}), true) |
9f25290a35e8
more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents:
7017
diff
changeset
|
38 %!assert(isequalwithequalnans([1,2,NaN,4],[1,2,NaN,4]), true) |
9f25290a35e8
more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents:
7017
diff
changeset
|
39 ## test for inequality |
9f25290a35e8
more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents:
7017
diff
changeset
|
40 %!assert(isequalwithequalnans([1,2,NaN,4],[1,NaN,3,4]),false) |
9f25290a35e8
more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents:
7017
diff
changeset
|
41 %!assert(isequalwithequalnans([1,2,NaN,4],[1,2,3,4]),false) |
9f25290a35e8
more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents:
7017
diff
changeset
|
42 ## test for equality (struct) |
9f25290a35e8
more private function and subfunction changes
John W. Eaton <jwe@octave.org>
parents:
7017
diff
changeset
|
43 %!assert(isequalwithequalnans(struct('a',NaN,'b',2),struct('a',NaN,'b',2),struct('a',NaN,'b',2)),true) |
11358
f5ee3e6e9266
isequalwithequalnans.m: Add test case from bug #31239.
Rik <octave@nomad.inbox5.com>
parents:
9899
diff
changeset
|
44 %!assert(isequalwithequalnans(1,2,1), false) |