diff src/pt-arg-list.cc @ 5846:db0598f94c0f

[project @ 2006-06-07 18:16:16 by jwe]
author jwe
date Wed, 07 Jun 2006 18:16:16 +0000
parents ace8d8d26933
children 415ae81d331b
line wrap: on
line diff
--- a/src/pt-arg-list.cc	Wed Jun 07 18:11:24 2006 +0000
+++ b/src/pt-arg-list.cc	Wed Jun 07 18:16:16 2006 +0000
@@ -32,6 +32,7 @@
 
 #include "defun.h"
 #include "error.h"
+#include "oct-lvalue.h"
 #include "oct-obj.h"
 #include "ov.h"
 #include "ov-usr-fcn.h"
@@ -77,25 +78,6 @@
     list_includes_magic_end = true;
 }
 
-int
-tree_argument_list::nargout_count (void) const
-{
-  int retval = 0;
-
-  for (const_iterator p = begin (); p != end (); p++)
-    {
-      tree_expression *elt = *p;
-
-      // FIXME -- need to be able to determine whether elt is
-      // an expression that could evaluate to a cs-list object, and if
-      // so, how many elements are in that list.  Ugly!
-
-      retval++;
-    }
-
-  return retval;
-}
-
 bool
 tree_argument_list::all_elements_are_constant (void) const
 {
@@ -260,6 +242,23 @@
   return args;
 }
 
+std::list<octave_lvalue>
+tree_argument_list::lvalue_list (void)
+{
+  std::list<octave_lvalue> retval;
+
+  for (tree_argument_list::iterator p = begin ();
+       p != end ();
+       p++)
+    {
+      tree_expression *elt = *p;
+
+      retval.push_back (elt->lvalue ());
+    }
+
+  return retval;
+}
+
 string_vector
 tree_argument_list::get_arg_names (void) const
 {