view src/of-miscellaneous-1-fixes.patch @ 4654:b9e4ebcad82f

disable doc extraction for optim package Disable the rules for extracting doc strings because they don't work when cross compiling. Our patches to the source files don't touch the doc strings, so there is no need to update them anyway.
author John W. Eaton <jwe@octave.org>
date Tue, 10 Apr 2018 07:50:10 -0400
parents 0267d1a7cffa
children
line wrap: on
line source

diff -urN miscellaneous-1.2.1.orig/inst/private/strsplit.m miscellaneous-1.2.1/inst/private/strsplit.m
--- miscellaneous-1.2.1.orig/inst/private/strsplit.m	2015-04-22 19:58:09.000000000 -0400
+++ miscellaneous-1.2.1/inst/private/strsplit.m	1969-12-31 19:00:00.000000000 -0500
@@ -1,125 +0,0 @@
-## Copyright (C) 2009-2012 Jaroslav Hajek
-##
-## This file is part of Octave.
-##
-## Octave is free software; you can redistribute it and/or modify it
-## under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 3 of the License, or (at
-## your option) any later version.
-##
-## Octave is distributed in the hope that it will be useful, but
-## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-## General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with Octave; see the file COPYING.  If not, see
-## <http://www.gnu.org/licenses/>.
-##
-## FIXME: this file is here to avoid conflicts with new Octave versions. Matlab
-##        has recently added strplit function (used to exist in Octave only) but
-##        their syntax is not compatible with ours. Rather than timing the
-##        release of each octave forge package that used strsplit, a copy of the
-##        old version was placed as private. Once the new Octave version is
-##        released, this file can be removed, and the calls to strsplit fixed.
-
-## -*- texinfo -*-
-## @deftypefn  {Function File} {[@var{cstr}] =} strsplit (@var{s}, @var{sep})
-## @deftypefnx {Function File} {[@var{cstr}] =} strsplit (@var{s}, @var{sep}, @var{strip_empty})
-## Split the string @var{s} using one or more separators @var{sep} and return
-## a cell array of strings.  Consecutive separators and separators at
-## boundaries result in empty strings, unless @var{strip_empty} is true.
-## The default value of @var{strip_empty} is false.
-##
-## 2-D character arrays are split at separators and at the original column
-## boundaries.
-##
-## Example:
-##
-## @example
-## @group
-## strsplit ("a,b,c", ",")
-##       @result{}
-##           @{
-##             [1,1] = a
-##             [1,2] = b
-##             [1,3] = c
-##           @}
-##
-## strsplit (["a,b" ; "cde"], ",")
-##       @result{}
-##           @{
-##             [1,1] = a
-##             [1,2] = b
-##             [1,3] = cde
-##           @}
-## @end group
-## @end example
-## @seealso{strtok}
-## @end deftypefn
-
-function cstr = strsplit (s, sep, strip_empty = false)
-
-  if (nargin < 2 || nargin > 3)
-    print_usage ();
-  elseif (! ischar (s) || ! ischar (sep))
-    error ("strsplit: S and SEP must be string values");
-  elseif (! isscalar (strip_empty))
-    error ("strsplit: STRIP_EMPTY must be a scalar value");
-  endif
-
-  if (isempty (s))
-    cstr = cell (size (s));
-  else
-    if (rows (s) > 1)
-      ## For 2-D arrays, add separator character at line boundaries
-      ## and transform to single string
-      s(:, end+1) = sep(1);
-      s = reshape (s.', 1, numel (s));
-      s(end) = []; 
-    endif
-
-    ## Split s according to delimiter
-    if (isscalar (sep))
-      ## Single separator
-      idx = find (s == sep);
-    else
-      ## Multiple separators
-      idx = strchr (s, sep);
-    endif
-
-    ## Get substring lengths.
-    if (isempty (idx))
-      strlens = length (s);
-    else
-      strlens = [idx(1)-1, diff(idx)-1, numel(s)-idx(end)];
-    endif
-    ## Remove separators.
-    s(idx) = [];
-    if (strip_empty)
-      ## Omit zero lengths.
-      strlens = strlens(strlens != 0);
-    endif
-
-    ## Convert!
-    cstr = mat2cell (s, 1, strlens);
-  endif
-
-endfunction
-
-
-%!assert (strsplit ("road to hell", " "), {"road", "to", "hell"})
-%!assert (strsplit ("road to^hell", " ^"), {"road", "to", "hell"})
-%!assert (strsplit ("road   to--hell", " -", true), {"road", "to", "hell"})
-%!assert (strsplit (["a,bc";",de"], ","), {"a", "bc", char(ones(1,0)), "de "})
-%!assert (strsplit (["a,bc";",de"], ",", true), {"a", "bc", "de "})
-%!assert (strsplit (["a,bc";",de"], ", ", true), {"a", "bc", "de"})
-
-%% Test input validation
-%!error strsplit ()
-%!error strsplit ("abc")
-%!error strsplit ("abc", "b", true, 4)
-%!error <S and SEP must be string values> strsplit (123, "b")
-%!error <S and SEP must be string values> strsplit ("abc", 1)
-%!error <STRIP_EMPTY must be a scalar value> strsplit ("abc", "def", ones (3,3))
-