exec/constants.cpp.sh
author František Kučera <franta-hg@frantovo.cz>
Sat, 11 Jan 2020 01:02:01 +0100
branchv_0
changeset 2 dace11211dc9
permissions -rwxr-xr-x
exec: protocol update + constants generator
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     1
#!/bin/bash
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     2
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     3
CSV="$(cat)";
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     4
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     5
echo "// This file was generated from the specification.
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     6
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     7
#include <map>
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     8
#include <string>
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
     9
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    10
namespace relpipe {
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    11
namespace in {
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    12
namespace filesystem {
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    13
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    14
class ExecMsg {
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    15
public:
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    16
";
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    17
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    18
echo "$CSV" | relpipe-in-csv constants | relpipe-tr-sql --relation 'constants' "SELECT '	static const int ' || message || ';' FROM constants WHERE code > 0" | relpipe-out-nullbyte | xargs -0 -n1 echo
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    19
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    20
echo "
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    21
	static std::map<int, std::wstring> getMessageNames() {
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    22
		std::map<int, std::wstring> m;
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    23
";
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    24
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    25
echo "$CSV" | relpipe-in-csv constants | relpipe-tr-sql --relation 'constants' "SELECT '		m[' || message || '] = L\"' || message || '\";' FROM constants WHERE code > 0" | relpipe-out-nullbyte | xargs -0 -n1 echo
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    26
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    27
echo "
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    28
		return m;
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    29
	}
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    30
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    31
};
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    32
"
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    33
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    34
echo "$CSV" | relpipe-in-csv constants | relpipe-tr-sql --relation 'constants' "SELECT 'const int ExecMsg::' || message || ' = ' || code || ';' FROM constants WHERE code > 0" | relpipe-out-nullbyte | xargs -0 -n1 echo
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    35
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    36
echo "
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    37
}
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    38
}
dace11211dc9 exec: protocol update + constants generator
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    39
}";