Mercurial > hg > octave-nkf
view scripts/deprecated/javamethods.m @ 17249:923ce8b42db2
improve try-catch-statement to save exception to a variable (bug #33217)
* oct-parse.in.yy (except_command): Handle exception identifiers.
* oct-parse.in.yy, parse.h (octave_base_parser::make_try_command):
New arg, ID.
* pt-except.cc, pt-except.h (tree_try_catch_command::expr_id): New
data member.
(tree_command::tree_command): Initialize it.
(tree_command::~tree_command): Delete it.
(tree_command::identifier): New function.
* pt-check.cc (tree_checker::visit_try_catch_command): Check for valid
expr_id.
* pt-pr-code.cc (tree_print_code::visit_try_catch_command):
Print expr_id.
* pt-eval.cc (tree_evaluator::visit_try_catch_command): Assign message
and identifier to variable.
* try.tst: New test.
* NEWS: Note change.
author | Stefan Mahr <dac922@gmx.de> |
---|---|
date | Tue, 13 Aug 2013 19:35:53 +0200 |
parents | b7667fcb9fbc |
children | d63878346099 |
line wrap: on
line source
## Copyright (C) 2007 Michael Goffioul ## ## 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/>. ## -*- texinfo -*- ## @deftypefn {Function File} {} javamethods (@var{javaobj}) ## @deftypefnx {Function File} {} javamethods ("@var{classname}") ## @deftypefnx {Function File} {@var{mtd_names} =} javamethods (@dots{}) ## Return the methods of a Java object or Java class in the form of a cell ## array of strings. If no output is requested, print the result to the ## standard output. ## @seealso{methods, fieldnames, javaMethod, javaObject} ## @end deftypefn function mtd_names = javamethods (classname) persistent warned = false; if (! warned) warned = true; warning ("Octave:deprecated-function", "javamethods is obsolete and will be removed from a future version of Octave, please use methods instead"); endif if (nargin != 1) print_usage (); endif cls_methods = javaMethod ("getMethods", "org.octave.ClassHelper", classname); method_list = ostrsplit (cls_methods, ';'); if (nargout == 0) if (! isempty (method_list)) disp (method_list); endif else mtd_names = cellstr (method_list); endif endfunction