Back to index

texmacs  1.0.7.15
Private Member Functions
tag_info Class Reference

#include <tag_info.hpp>

List of all members.

Private Member Functions

 CONCRETE (tag_info)
 tag_info (parent_info pi, array< child_info > ci, tree extra)
 tag_info (int arity=0, int extra=0, int am=ARITY_NORMAL, int cm=CHILD_UNIFORM, bool frozen=false)
 tag_info (tree t)
 operator tree ()
child_infooperator() (int child, int n)

Detailed Description

Definition at line 218 of file tag_info.hpp.


Constructor & Destructor Documentation

tag_info::tag_info ( parent_info  pi,
array< child_info ci,
tree  extra 
) [private]

Definition at line 265 of file tag_info.cpp.

                                                                    {
  rep= tm_new<tag_info_rep> (pi, ci, extra);
}
tag_info::tag_info ( int  arity = 0,
int  extra = 0,
int  am = ARITY_NORMAL,
int  cm = CHILD_UNIFORM,
bool  frozen = false 
) [private]

Definition at line 269 of file tag_info.cpp.

                                                             {
  rep= tm_new<tag_info_rep> (a, x, am, cm, frozen);
}
tag_info::tag_info ( tree  t) [private]

Definition at line 273 of file tag_info.cpp.

                          {
  if ((!is_func (t, TUPLE)) || (N(t)<2) || (L(t[1]) != TUPLE)) {
    cerr << "\nt= " << t << "\n";
    FAILED ("bad tag_info");
  }
  parent_info pi (t[0]);
  int i, n= N(t[1]);
  array<child_info> ci (n);
  for (i=0; i<n; i++)
    ci[i]= child_info (t[1][i]);
  rep= tm_new<tag_info_rep> (pi, ci, N(t)==3? t[2]: tree (""));
}

Here is the call graph for this function:


Member Function Documentation

tag_info::CONCRETE ( tag_info  ) [private]
tag_info::operator tree ( ) [private]

Definition at line 286 of file tag_info.cpp.

                         {
  if (rep->extra == "") return tree (TUPLE, (tree) rep->pi, (tree) rep->ci);
  else return tree (TUPLE, (tree) rep->pi, (tree) rep->ci, rep->extra);
}
child_info & tag_info::operator() ( int  child,
int  n 
) [private]

Definition at line 452 of file tag_info.cpp.

                                       {
  int index= rep->get_index (child, n);
  if (index < 0 || index >= N(rep->ci)) {
    cout << "child       = " << child << "\n";
    cout << "out of      = " << n << "\n";
    cout << "child_mode  = " << rep->pi.child_mode << "\n";
    cout << "arity_mode  = " << rep->pi.arity_mode << "\n";
    cout << "arity_base  = " << rep->pi.arity_base << "\n";
    cout << "arity_extra = " << rep->pi.arity_extra << "\n";
    cout << "N(ci)       = " << N(rep->ci) << "\n";
    ASSERT (false, "index out of range");
  }
  return rep->ci [index];
}

Here is the call graph for this function:


The documentation for this class was generated from the following files: