diff src/pt-idx.h @ 4131:597fbc55ea40

[project @ 2002-10-29 17:12:53 by jwe]
author jwe
date Tue, 29 Oct 2002 17:12:54 +0000
parents 47d3baea432d
children 62afb31c1f85
line wrap: on
line diff
--- a/src/pt-idx.h	Mon Oct 28 21:05:31 2002 +0000
+++ b/src/pt-idx.h	Tue Oct 29 17:12:54 2002 +0000
@@ -54,12 +54,17 @@
   tree_index_expression (tree_expression *e, const std::string& n,
 			 int l = -1, int c = -1);
 
+  tree_index_expression (tree_expression *e, tree_expression* df,
+			 int l = -1, int c = -1);
+
   ~tree_index_expression (void);
 
   void append (tree_argument_list *lst = 0, char t = '(');
 
   void append (const std::string& n);
 
+  void append (tree_expression *df);
+
   bool is_index_expression (void) const { return true; }
 
   std::string name (void) const;
@@ -97,10 +102,16 @@
   // The type of this index expression.
   std::string type;
 
-  // The names of the arguments.
+  // The names of the arguments.  Used for constant struct element
+  // references.
   SLList<string_vector> arg_nm;
 
-  Octave_map tree_index_expression::make_arg_struct (void) const;
+  // The list of dynamic field names, if any.
+  SLList<tree_expression *> dyn_field;
+
+  Octave_map make_arg_struct (void) const;
+
+  std::string get_struct_index (Pix p_arg_nm, Pix p_dyn_field) const;
 
   // No copying!