File: data.cc

package info (click to toggle)
icmake 13.05.01-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 7,132 kB
  • sloc: cpp: 11,595; fortran: 883; makefile: 853; sh: 546; pascal: 342
file content (95 lines) | stat: -rw-r--r-- 2,187 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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
//#define XERR
#include "builtin.ih"

char const Builtin::s_space[] = " \t\f\n\r\v";

//                              1
Pattern Builtin::s_percent{ R"(%(\d+))" };

std::unordered_map<int, Builtin::GlobSpecs> const Builtin::s_globSpecs =
{
                //  type                  flags
    { O_ALL,    { Glob::ANY,            Glob::PERIOD | Glob::NOMATCH } },
    { O_DIR,    { Glob::DIRECTORY,      Glob::PERIOD | Glob::NOMATCH } },
    { O_FILE,   { Glob::REGULAR_FILE,   Glob::PERIOD | Glob::NOMATCH } },
    { O_SUBDIR, { Glob::DIRECTORY,      Glob::NOMATCH } },
};

// See ../../support/builtinfunctions/builtinfunctions.h
void(Builtin::*Builtin::s_function[])() =
{
    // 0
    &Builtin::argHead,
    &Builtin::argTail,
    &Builtin::asciiStr2int,
    &Builtin::asciiInt2str,

    // 4
    &Builtin::backtick,
    &Builtin::changeBase,
    &Builtin::changeExtension,
    &Builtin::changePath,

    // 8
    &Builtin::chdir,
    &Builtin::cmdHead,
    &Builtin::cmdTail,
    &Builtin::echo,

    // c
    &Builtin::listElement,
    &Builtin::backtick,             // the eval() call is handled by backtick
    &Builtin::exec,
    &Builtin::exec,                 // execute is only used by the compiler,
                                    // there's no need for a separate function
    // 10
    &Builtin::exists,
    &Builtin::fgets,
    &Builtin::fprintf,
    &Builtin::getBase,

    // 14
    &Builtin::getDotExtension,
    &Builtin::getExtension,
    &Builtin::getPath,
    &Builtin::getCh,

    // 18
    &Builtin::getEnvironVar,
    &Builtin::getPid,
    &Builtin::gets,
    &Builtin::listLen,

    // 1c
    &Builtin::makeList,
    &Builtin::printf,
    &Builtin::putEnvironment,
    &Builtin::stat,

    // 20
    &Builtin::strElement,
    &Builtin::strFind,
    &Builtin::strFormat,
    &Builtin::strLength,

    // 24
    &Builtin::strLowercase,
    &Builtin::resize,
    &Builtin::strTok,
    &Builtin::strUppercase,

    // 28
    &Builtin::substring,
    &Builtin::system,
    &Builtin::trim,
    &Builtin::trimLeft,

    // 2c
    &Builtin::trimRight,
    &Builtin::strChr,
    &Builtin::listFind,
    &Builtin::listUnion,

    // 30
    &Builtin::listConstruct,
};