Mercurial > hg > octave-lyh
diff src/ov-builtin.cc @ 3933:f9ea3dcf58ee
[project @ 2002-05-15 03:21:00 by jwe]
author | jwe |
---|---|
date | Wed, 15 May 2002 03:21:01 +0000 |
parents | 71bd2d124119 |
children | db58c1a1e6ce |
line wrap: on
line diff
--- a/src/ov-builtin.cc +++ b/src/ov-builtin.cc @@ -52,6 +52,37 @@ } octave_value_list +octave_builtin::subsref (const std::string type, + const SLList<octave_value_list>& idx, + int nargout) +{ + octave_value_list retval; + + switch (type[0]) + { + case '(': + retval = do_multi_index_op (nargout, idx.front ()); + break; + + case '{': + case '.': + { + std::string nm = type_name (); + error ("%s cannot be indexed with %c", nm.c_str (), type[0]); + } + break; + + default: + panic_impossible (); + } + + return retval; + + // XXX FIXME XXX + // return retval.next_subsref (type, idx); +} + +octave_value_list octave_builtin::do_multi_index_op (int nargout, const octave_value_list& args) { octave_value_list retval;