File: pushback.cc

package info (click to toggle)
oxref 2.02.00-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 692 kB
  • sloc: cpp: 1,282; makefile: 131; sh: 48
file content (32 lines) | stat: -rw-r--r-- 922 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "storage.ih"

    // receives lines generated by oxref, processing them according to
    // the matched s_* patterns.

void Storage::push_back(string line)
{
    if (s_reject << line)
        return;

    replacements(line);

    if (s_objFile << line)      // 1st line of a record, like 
        objFile(s_objFile[1]);  //      tmp/main.o:  file format ...

    else if (s_abs << line)     // the source filename (if available)
        sourceFile(s_abs[1]);

    else if (s_UND << line)     // *UND* entries are stored in 
        undefined(s_UND[1]);    // Store::d_xrefData: entities referred to by
                                // the current function

    else if (s_g_F << line)     // 'g   F .text' entries define symbols
        function(s_g_F[1]);     // in d_xrefData

    else if (s_g_O << line)     // 'g   O .data' entries  define global data
        object(s_g_O[1]);       // in d_xrefData
}