/[CvsGraph]/cvsgraph/rcs.h
ViewVC logotype

Diff of /cvsgraph/rcs.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.5, Wed Jan 9 00:28:36 2002 UTC revision 1.15.4.1, Mon Nov 13 20:42:23 2006 UTC
# Line 21  Line 21 
21  #ifndef __RCS_H  #ifndef __RCS_H
22  #define __RCS_H  #define __RCS_H
23    
24    struct __revision_t;    /* Forward */
25    
26  typedef struct __rev_t  typedef struct __rev_t
27  {  {
28          char    *branch;          char    *branch;
# Line 36  Line 38 
38    
39  typedef struct __tag_t  typedef struct __tag_t
40  {  {
41          char    *tag;          char                    *tag;
42          rev_t   *rev;          rev_t                   *rev;
43            struct __revision_t     *logrev;        /* backpointer to logical revision */
44            int                     yofs;           /* Internal drawing offset to center of the tag */
45            int                     ignore;         /* This tag is marked ignored for drawing */
46  } tag_t;  } tag_t;
47    
48  typedef struct __tags_t  typedef struct __tags_t
# Line 46  Line 51 
51          int     ntags;          int     ntags;
52  } tags_t;  } tags_t;
53    
54    typedef union __tag_revision_t
55    {
56            tag_t                   *tag;
57            struct __revision_t     *rev;
58    } tag_revision_t;
59    
60    typedef enum __tag_revision_e
61    {
62            TR_INVALID = 0,
63            TR_TAG,
64            TR_REVISION
65    } tag_revision_e;
66    
67    typedef struct __merge_t
68    {
69            tag_revision_e  type;
70            tag_revision_t  to;             /* This tag/revision is destination of a merge */
71            tag_revision_t  from;           /* This tag/revision is origin of a merge */
72            int             clr;            /* Color reference for multiple regex match statements */
73    } merge_t;
74    
75  typedef struct __idrev_t  typedef struct __idrev_t
76  {  {
77          char    *id;          char    *id;
# Line 77  Line 103 
103          int     ndtexts;          int     ndtexts;
104  } dtexts_t;  } dtexts_t;
105    
106    typedef enum __phrase_type_e    /* Extra phrases in deltas */
107    {
108            PT_INVALID = 0,
109            PT_MERGEPOINT           /* CVSNT: mergepoint1 <revision-string> */
110    } phrase_type_e;
111    
112    typedef struct __phrase_t
113    {
114            phrase_type_e   type;
115            rev_t           *rev;
116    } phrase_t;
117    
118    typedef struct __phrases_t
119    {
120            phrase_t        **phrases;
121            int             nphrases;
122    } phrases_t;
123    
124  typedef struct __delta_t  typedef struct __delta_t
125  {  {
126          rev_t   *rev;                   /* Delta revision */          rev_t           *rev;           /* Delta revision */
127          char    *date;          char            *date;
128          char    *author;          char            *author;
129          char    *state;          char            *state;
130          revs_t  *branches;          revs_t          *branches;
131          rev_t   *next;                  /* Next delta in this branch */          rev_t           *next;          /* Next delta in this branch */
132          int     flag;                   /* Set if assigned a branch to prevent infinite recursion */          phrases_t       *phrases;       /* Extra phrases in the delta */
133            phrase_t        *mergepoint;    /* CVSNT: mergepoint1 */
134            int             flag;           /* Set if assigned a branch to prevent infinite recursion */
135  } delta_t;  } delta_t;
136    
137  typedef struct __deltas_t  typedef struct __deltas_t
# Line 94  Line 140 
140          int     ndeltas;          int     ndeltas;
141  } deltas_t;  } deltas_t;
142    
 struct __revision_t;    /* Forward */  
   
143  typedef struct __branch_t       /* Logical branch structure */  typedef struct __branch_t       /* Logical branch structure */
144  {  {
145          struct __revision_t     **revs;          struct __revision_t     **revs;
146          int                     nrevs;          int                     nrevs;
147          struct __revision_t     *branchpoint;   /* Backlink to revision that spawned the branch */          struct __revision_t     *branchpoint;   /* Backlink to revision that spawned the branch */
148          rev_t                   *branch;/* Branch id */          rev_t                   *branch;        /* Branch id */
149          tag_t                   **tags; /* Symbolic tags */          tag_t                   **tags;         /* Symbolic tags */
150          int                     ntags;          int                     ntags;
151          int                     w, h;   /* BBox width/height */          int                     subtree_draw;   /* Set if subtree drawing should draw this branch */
152          int                     cx, y;  /* BBox center-top position */          int                     folded;         /* Set if this branch is folded in another box */
153          int                     tw, th; /* Total BBox width/height */          struct __branch_t       *folded_to;     /* Set to the branch where this one is folded into */
154            struct __branch_t       **folds;        /* List of other branches folded into this one */
155            int                     nfolds;
156            int                     fw;             /* Max width of the branch number if folds present */
157            int                     w, h;           /* BBox width/height */
158            int                     cx, y;          /* BBox center-top position */
159            int                     tw, th;         /* Total BBox width/height */
160  } branch_t;  } branch_t;
161    
162  typedef struct __revision_t     /* Logical revision structure */  typedef struct __revision_t     /* Logical revision structure */
# Line 115  Line 165 
165          dtext_t         *dtext;          dtext_t         *dtext;
166          rev_t           *rev;           /* Shortcut to delta->rev */          rev_t           *rev;           /* Shortcut to delta->rev */
167          char            *revtext;       /* Expanded text to draw */          char            *revtext;       /* Expanded text to draw */
168            char            *revidtext;     /* Expanded ID text to draw (normally revision number) */
169          branch_t        *branch;        /* The branch this revision belongs to */          branch_t        *branch;        /* The branch this revision belongs to */
170          branch_t        **branches;     /* Branches from this revision */          branch_t        **branches;     /* Branches from this revision */
171          int             nbranches;          int             nbranches;
# Line 123  Line 174 
174          int             w, h;           /* BBox width/height */          int             w, h;           /* BBox width/height */
175          int             cx, y;          /* BBox center-top position */          int             cx, y;          /* BBox center-top position */
176          int             stripped;       /* Set if we jumped revisions due to strip_untagged */          int             stripped;       /* Set if we jumped revisions due to strip_untagged */
177            int             mergetarget;    /* Set if a cvsnt mergepoint starts/ends here */
178  } revision_t;  } revision_t;
179    
180  typedef struct __rcsfile_t  typedef struct __rcsfile_t
# Line 152  Line 204 
204          branch_t        **branches;     /* List of branches */          branch_t        **branches;     /* List of branches */
205          branch_t        *active;        /* The active branch (translated branch of admin) */          branch_t        *active;        /* The active branch (translated branch of admin) */
206          int             nbranches;          int             nbranches;
207            int             nfolds;         /* Account folds to keep total branch-count */
208            merge_t         *merges;        /* Merge tags from->to description */
209            int             nmerges;
210          int             tw, th;         /* Total BBox width/height */          int             tw, th;         /* Total BBox width/height */
211  } rcsfile_t;  } rcsfile_t;
212    
213  void set_id(void);      /* Next scan is for an id */  void set_id(void);      /* Next scan is for an id */
214    void set_author(void);  /* Next scan is for an author */
215  void set_sym(void);     /* Next scan is for a symbol */  void set_sym(void);     /* Next scan is for a symbol */
216  void set_skip(void);    /* Everyting until ';' dropped */  void set_skip(void);    /* Everyting until ';' dropped */
217  void set_skipstr(void); /* Next string must be dropped */  void set_skipstr(void); /* Next string must be dropped */
218    
219  int rcslex(void);  int yylex(void);
220  int rcsparse(void);  int yyparse(void);
221    
222  extern FILE *rcsin;  extern FILE *yyin;
223  extern rcsfile_t *rcsfile;  extern rcsfile_t *rcsfile;
224    
225  #endif  #endif

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.15.4.1

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0