changeset 5692:31301bd91095 octave-forge

New function for determining which package a function belongs to
author hauberg
date Fri, 29 May 2009 07:19:26 +0000
parents 1d3c25c843f6
children 80b423fb1efe
files extra/generate_html/inst/private/find_package.m
diffstat 1 files changed, 32 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/extra/generate_html/inst/private/find_package.m	Fri May 29 07:19:26 2009 +0000
@@ -0,0 +1,32 @@
+## Copyright (C) 2009 Soren Hauberg
+##
+## This program 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.
+##
+## This program 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 this program; see the file COPYING.  If not, see
+## <http://www.gnu.org/licenses/>.
+
+## Internal function
+function [package, found] = find_package (name)
+  package = "octave";
+  p = which (name);
+  found = !isempty (p);
+  l = pkg ("list");
+  
+  for k = 1:length (l)
+    d = l {k}.dir;
+    idx = strfind (p, d);
+    if (numel (idx) == 1 && idx == 1)
+      package = l {k}.name;
+      break;
+    endif
+  endfor
+endfunction