Back to index

Classes | Defines | Functions | Variables
bridge.hpp File Reference
#include "typesetter.hpp"
#include "Concat/concater.hpp"
#include "Stack/stacker.hpp"
#include "Format/page_item.hpp"
#include "Page/vpenalty.hpp"
#include "Page/skeleton.hpp"
#include "Page/pager.hpp"
#include "impl_typesetter.hpp"
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


class  bridge_rep
class  bridge


#define VALID_MASK   1
#define CORRUPTED   0
#define PROCESSED   1
#define WANTED_MASK   2
#define WANTED_PARUNIT   2
#define MACRO_ASSIGN   0
#define MACRO_INSERT   1
#define MACRO_REMOVE   2


bridge make_bridge (typesetter ttt, tree t, path p)
tm_ostreamoperator<< (tm_ostream &out, bridge br)
tree substitute (tree t, path p, tree u)


bridge nil_bridge

Define Documentation

#define CORRUPTED   0

Definition at line 23 of file bridge.hpp.

#define MACRO_ASSIGN   0

Definition at line 30 of file bridge.hpp.

#define MACRO_INSERT   1

Definition at line 31 of file bridge.hpp.

#define MACRO_REMOVE   2

Definition at line 32 of file bridge.hpp.

#define PROCESSED   1

Definition at line 24 of file bridge.hpp.

#define VALID_MASK   1

Definition at line 22 of file bridge.hpp.

#define WANTED_MASK   2

Definition at line 26 of file bridge.hpp.


Definition at line 27 of file bridge.hpp.

#define WANTED_PARUNIT   2

Definition at line 28 of file bridge.hpp.

Function Documentation

bridge make_bridge ( typesetter  ttt,
tree  t,
path  p 

Definition at line 59 of file bridge.cpp.

  // cout << "Make bridge " << st << ", " << ip << LF;
  // cout << "Preamble mode= " << ttt->env->preamble << LF;
  if (ttt->env->preamble)
    return make_inactive_bridge (ttt, st, ip);
  switch (L(st)) {
  case ERROR:
    return bridge_auto (ttt, st, ip, error_m, true);
  case DOCUMENT:
    return bridge_document (ttt, st, ip);
  case SURROUND:
    return bridge_surround (ttt, st, ip);
  case HIDDEN:
    return bridge_hidden (ttt, st, ip);
  case DATOMS:
    return bridge_formatting (ttt, st, ip, ATOM_DECORATIONS);
  case DLINES:
    return bridge_formatting (ttt, st, ip, LINE_DECORATIONS);
  case DPAGES:
    return bridge_formatting (ttt, st, ip, PAGE_DECORATIONS);
  case TFORMAT:
    return bridge_formatting (ttt, st, ip, CELL_FORMAT);
  case WITH:
    return bridge_with (ttt, st, ip);
  case COMPOUND:
    return bridge_compound (ttt, st, ip);
  case ARG:
    return bridge_argument (ttt, st, ip);
  case MARK:
    return bridge_mark (ttt, st, ip);
  case EXPAND_AS:
    return bridge_expand_as (ttt, st, ip);
  case EVAL:
  case QUASI:
    return bridge_eval (ttt, st, ip);
  case EXTERN:
    return bridge_rewrite (ttt, st, ip);
  case INCLUDE:
    return bridge_rewrite (ttt, st, ip);
  case STYLE_ONLY:
  case ACTIVE:
  case VAR_ACTIVE:
    return bridge_compound (ttt, st, ip);
  case INACTIVE:
    return bridge_auto (ttt, st, ip, inactive_m, true);
    return bridge_auto (ttt, st, ip, var_inactive_m, true);
    return bridge_rewrite (ttt, st, ip);
  case LOCUS:
    return bridge_locus (ttt, st, ip);
  case HLINK:
  case ACTION:
    return bridge_compound (ttt, st, ip);
  case CANVAS:
    return bridge_canvas (ttt, st, ip);
  case ORNAMENT:
    return bridge_ornament (ttt, st, ip);
    if (L(st) < START_EXTENSIONS) return bridge_default (ttt, st, ip);
    else return bridge_compound (ttt, st, ip);

Here is the call graph for this function:

Here is the caller graph for this function:

tm_ostream& operator<< ( tm_ostream out,
bridge  br 

Definition at line 154 of file bridge.cpp.

  return out << "bridge [" << br->st << ", " << br->ip << "]";
tree substitute ( tree  t,
path  p,
tree  u 

Definition at line 36 of file bridge_default.cpp.

  if (is_nil (p)) return u;
  int i, n= N(t);
  tree t2 (t, n);
  for (i=0; i<n; i++) {
    if (i == p->item) t2[i]= substitute (t[i], p->next, u);
    else t2[i]= t[i];
  return t2;

Here is the call graph for this function:

Variable Documentation

Definition at line 32 of file bridge.cpp.