data: revised indexing
* increased performance. coati is now 1.55 times as fast as at version 0.4 * integrated sourceweb parsing code * removed astbodyvisitor * NameHierarchy now store signatures in a new format * storage does not allow to re-set the type of a node, once it is marked as "defined". * made onTemplateRecordSpecParsed just create the edge, not the node. * removed distinction between template specialitzations for functions and classes
This commit is contained in:
Binary file not shown.
@@ -1,13 +0,0 @@
|
||||
-----BEGIN LICENSE-----
|
||||
asdf;lkjas;ldkfj;alsdkfj;alskdfasdflkjlksjlkdfasdfoiupqwernkljoviopizpoxcuivojqwoenr;soidfooiaupoiay
|
||||
Single User License
|
||||
Coati 0
|
||||
$9$AQAKZ6/FMxHq850YPk5GfWSYRWZv+x1mgB5B6/OPz7D7mOfCvowH
|
||||
hctPm+tJfoiFhSamiyBuTe4jbtIvvyZShK1B1OKfG1C+lOboSZh2HJn
|
||||
6cBdiKE6ZfrymDngPUE23lm/JPIJwlZjvPTcd/N3YusUs0aqiTEXfHu
|
||||
G/c34NYI5AIbute6xQjY6Q0cLdZcOHqSBfGxZrZTl9q6yVcM6B2mwDE
|
||||
YsFzrOmXsIyYLX4+lf0eEFl5Dmw437IZN8z5yZFOZ3xp91Mpz6nMU79
|
||||
9X6ATP6RRVC58zYYznasbvqgz1xoOIivYZr6WG/+3ia4/A5Zn9r+Mt9
|
||||
5AjHqWOZtMqQAHqeHgOzsKHqbu0xduH8HsPXBF8fPD6EnLVz6GbjBET
|
||||
KuDWka14AHzA==
|
||||
-----END LICENSE-----
|
||||
@@ -1,30 +0,0 @@
|
||||
-----BEGIN ENCRYPTED PRIVATE KEY-----
|
||||
MIIFNTBfBgkqhkiG9w0BBQ0wUjAxBgkqhkiG9w0BBQwwJAQMDAB5IuntKywoJmry
|
||||
AgMDDUACASAwDAYIKoZIhvcNAgkFADAdBglghkgBZQMEASoEEA7JwOuCMu6xUJ+c
|
||||
0NBKZZsEggTQC82I8AHltLbPCAIkTZoJv68aOV/cVXDcxZ7Mn1hOiob7nO4RuteW
|
||||
mwTX3JZFd7Jlw5h706xAdRjbSsJXGgTMXECciqrfZ9c21+tYbKV4JpPBQMEhTLpa
|
||||
IXUTWonQ9wh7vis3bcwBPaRCsfDtYaz872vDpf1X5BVOppoffKCiKFi2y5C+e3HG
|
||||
CPcg+BTgZg+SRJB9yvSDqdDO5/s9Y6+otePt4Gr+wSOJRwYkdZ67f9uq4BaFcw2z
|
||||
wIRKA0C1oClu7TAo5onjv1rvw/66migcMHRw1zjIk6oQv44caJvqca1eM9dniZo7
|
||||
ccbq11PWpeBdKvEkAWuW1PoI7uuLQNdzs3UDO7LJttWwVNAKtO3o8LOL8x9Q7Jns
|
||||
tvQqUrf0VNB8eBfmsD2I3zVMu2X4rNEDYlAbrL3f1vNkt949ib4eG7+lo3wrCt6J
|
||||
6UFA791HGVJUvFI0NHdtT32+LdKyTJ+bIlz663LkNU2+mBs6UL7qe6XIBoXCNcg8
|
||||
+VDKDDVSIyckSVxV7WuGeX9n3igRuvt88T2pCVlY+HEBWDgFoXxc5vx8LdD9EVaQ
|
||||
OAmuXABLNTqUTCGms9KAa3WJ/QW6++NAt4uf+37LKzM9zyUrDZMTs5M2ZJ/otwgK
|
||||
ZqIbDcVyfsX79ATs0UeJ7bdrMduXuKhFIVsjlJCGXlyKa7h+JmEpPkqnELGiThvi
|
||||
hvWogpYt6S6/ofw13MAAgkDqgsfhUGH8tmPu8ufYQn2QQTjB7y1X+s+DUPBUYlic
|
||||
Ds29YvGMp3wesMFppfwygtGtBFxxs7zvuz3aq9Putu1xC9q3dtHOPdxZYyLvz/aJ
|
||||
F6BfOqk3NP0a6/S9TphgxE9CqYz2RIqRQg91IbPPrEiC8Sm3fLgX0fO1kfVN7x0E
|
||||
Pg5+3M56UVflcWLsIcjDVYK4EId4XLHBTjFn8xhkEj56UJQsjb9fFbdQQBBI5pWM
|
||||
G2nxoGdHD/GCOjZi2f393OMIDFbfoIaoz4L4osIFYaIg4sMrIy2oUOEwnqyLEVf2
|
||||
tQ58ysC7SDVZza4jai5QXuTCHyMcHYf9BxuzIHEViquI0y19QvlMW17effUctfow
|
||||
8a0sqCYr0KczggsaOR9BdAgHpSeoCM7SxkQd+j55iX/w7Det8JUvHoCSHRPwM0ar
|
||||
QiAncEtdKYyU/vz25feTh/crDH1OB4umZIatPVJFr7samb1McocSI5/AxQ5YSkRT
|
||||
BYyFj6Yi5D0jgmob4+t96Ub0UnWinXk+V6CeTEzgSE6/FYlEb+PqibWAhDfEWG+7
|
||||
0oG58ajt2vOzbGytDE9RV48HzLoUoWEaNDoa51viuJhpSmRii4CrBj+ENvber2GR
|
||||
qOM7bMcmicqUvegN9cB+9ZiIzWVePVvI/1NRvypqjXJVE99AD3GyRd5fuC0Vo4VQ
|
||||
xdaZuk6ysWBldUcFVUCDzr32FWaxKe6cGZbjRtS/u6rDJ8DEJzvm7FcgcLj80qrd
|
||||
mGrAMUafAfe+FrHSiMits/pUjzwiZqjsQeVIlULUgxQGeLVoERV7InkooBqxVOpI
|
||||
R63O9zMjEZgkf7yhD8nOrw1fLO08D/eOud2yL5EhXUMWQmjnmBYDog/M1IRu13ba
|
||||
L4qeddYh0cgHID8DjhjaY+g8VKiikgRO0d59xAkzHrMk4MS1l27xOz8=
|
||||
-----END ENCRYPTED PRIVATE KEY-----
|
||||
@@ -1,9 +0,0 @@
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsop6ceQNJeWYjourIu2Z
|
||||
QydUFJwm3kwqXvoAiYP+NeLEyR9OET0eBRwowKDbFzdfDyCXcfJAbsRBoQ1he8Bw
|
||||
dXcGZqs+QNcnoBz0Vl/uaxOXpVSN5RYj6wo0IFQ/nrR+gMTmzHut8ohtXI4n4a0C
|
||||
7OVMfwoR2uJyLMLTQiHekEsLvraMnRcS5FbqIq2yUuVYCfGvU3Y2xo1jsvIkko7W
|
||||
uF/Lw7LFCeruZ1hRYDLGa/HnKepdLhGXoh7lDQuagsUg510PVRGru4G50ATqKVTa
|
||||
IwcvWNeF0BWjC78uBIhk5G65ZI/HRsS4MQvu3UwrTvtp6d9tTNOT9wixpfD1UtBr
|
||||
qwIDAQAB
|
||||
-----END PUBLIC KEY-----
|
||||
+690
-194
@@ -1,177 +1,189 @@
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
ConfigManager.cpp WARNING: value path/to/nowhere is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:1:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:1:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:1:11
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:1:13
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:7:15
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:5:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:48
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:7:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:3:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
|
||||
Token.cpp ERROR: Location Id was not referenced by this Token.
|
||||
Node.cpp WARNING: Cannot change NodeType after it was already set from namespace to class
|
||||
Edge.cpp ERROR: Nodes are not plain copies.
|
||||
@@ -220,10 +232,23 @@ Edge.cpp ERROR: Nodes are not plain copies.
|
||||
NetworkProtocolHelper.cpp ERROR: Failed to parse message, invalid type token
|
||||
NetworkProtocolHelper.cpp ERROR: Failed to parse setActiveToken message, invalid token count
|
||||
Settings.cpp WARNING: File for Settings not found: data/SettingsTestSuite/wrong_settings.xml
|
||||
ConfigManager.cpp WARNING: value Bool is not present in config.
|
||||
ConfigManager.cpp WARNING: value Int is not present in config.
|
||||
ConfigManager.cpp WARNING: value Float is not present in config.
|
||||
ConfigManager.cpp WARNING: value String is not present in config.
|
||||
Settings.cpp WARNING: File for Settings not found: data/SettingsTestSuite/wrong_settings.xml
|
||||
ConfigManager.cpp WARNING: value Bool is not present in config.
|
||||
ConfigManager.cpp WARNING: value Int is not present in config.
|
||||
ConfigManager.cpp WARNING: value Float is not present in config.
|
||||
ConfigManager.cpp WARNING: value String is not present in config.
|
||||
ConfigManager.cpp WARNING: value Bool is not present in config.
|
||||
ConfigManager.cpp WARNING: value Int is not present in config.
|
||||
ConfigManager.cpp WARNING: value Float is not present in config.
|
||||
ConfigManager.cpp WARNING: value String is not present in config.
|
||||
ConfigManager.cpp WARNING: value NewBool is not present in config.
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: typedef: type -> int <file.cpp 1:1 1:1>
|
||||
INFO: typedef: type <file.cpp 1:1 1:1>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: class: Class <file.cpp 1:1 1:1>
|
||||
@@ -234,9 +259,6 @@ TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: global: Global <file.cpp 1:42 1:42>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: global: Global <file.cpp 1:7 1:7>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: field: m_field <file.cpp 1:3 1:3>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
@@ -244,13 +266,13 @@ TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: field: Struct::m_field <file.cpp 1:11 1:11>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: function: isTrue <file.cpp 1:14 1:14>
|
||||
INFO: function: bool isTrue(char) <file.cpp 1:14 1:14>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: method: isMethod <file.cpp 1:9 1:9>
|
||||
INFO: method: void isMethod(bool) <file.cpp 1:9 1:9>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: method: Class::isMethod <file.cpp 1:1 1:1>
|
||||
INFO: method: void Class::isMethod(bool) <file.cpp 1:1 1:1>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: namespace: utility <file.cpp 1:1 1:1>
|
||||
@@ -275,34 +297,34 @@ TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: inheritance: StructB : StructA <file.cpp 1:5 1:5>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: method: A::isMethod <file.cpp 1:9 1:9>
|
||||
INFO: method: B::isMethod <file.cpp 1:7 1:7>
|
||||
INFO: override: A::isMethod -> B::isMethod <file.cpp 1:4 1:4>
|
||||
INFO: method: void A::isMethod(bool) <file.cpp 1:9 1:9>
|
||||
INFO: method: void B::isMethod(bool) <file.cpp 1:7 1:7>
|
||||
INFO: override: void A::isMethod(bool) -> void B::isMethod(bool) <file.cpp 1:4 1:4>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: function: isTrue <file.cpp 1:0 1:0>
|
||||
INFO: function: func <file.cpp 1:0 1:0>
|
||||
INFO: call: isTrue -> func <file.cpp 1:9 1:9>
|
||||
INFO: function: bool isTrue(char) <file.cpp 1:0 1:0>
|
||||
INFO: function: void func(bool) <file.cpp 1:0 1:0>
|
||||
INFO: call: bool isTrue(char) -> void func(bool) <file.cpp 1:9 1:9>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: global: global <file.cpp 1:0 1:0>
|
||||
INFO: function: isTrue <file.cpp 1:0 1:0>
|
||||
INFO: call: global -> isTrue <file.cpp 1:7 1:7>
|
||||
INFO: function: bool isTrue(char) <file.cpp 1:0 1:0>
|
||||
INFO: call: global -> bool isTrue(char) <file.cpp 1:7 1:7>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: function: isTrue <file.cpp 1:0 1:0>
|
||||
INFO: function: bool isTrue(char) <file.cpp 1:0 1:0>
|
||||
INFO: field: Foo::m_field <file.cpp 1:0 1:0>
|
||||
INFO: field usage: isTrue -> Foo::m_field <file.cpp 1:7 1:7>
|
||||
INFO: field usage: bool isTrue(char) -> Foo::m_field <file.cpp 1:7 1:7>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: function: isTrue <file.cpp 1:0 1:0>
|
||||
INFO: function: bool isTrue(char) <file.cpp 1:0 1:0>
|
||||
INFO: global: global <file.cpp 1:0 1:0>
|
||||
INFO: global usage: isTrue -> global <file.cpp 1:7 1:7>
|
||||
INFO: global usage: bool isTrue(char) -> global <file.cpp 1:7 1:7>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: function: isTrue <file.cpp 1:0 1:0>
|
||||
INFO: function: Struct isTrue(char) <file.cpp 1:0 1:0>
|
||||
INFO: struct: Struct <file.cpp 1:0 1:0>
|
||||
INFO: type usage: isTrue -> Struct <file.cpp 1:0 1:0>
|
||||
INFO: type usage: Struct isTrue(char) -> Struct <file.cpp 1:7 1:7>
|
||||
INFO: file: file.cpp < 0:0 0:0>
|
||||
TextAccess.cpp ERROR: Could not open file file.cpp
|
||||
INFO: file: file.h < 0:0 0:0>
|
||||
@@ -322,3 +344,477 @@ TextAccess.cpp WARNING: Line numbers start with one, is 0
|
||||
TextAccess.cpp WARNING: Line numbers start with one, is 0
|
||||
TokenLocationCollection.cpp ERROR: Can't create TokenLocation with wrong boundaries.
|
||||
TokenLocationCollection.cpp ERROR: Can't create TokenLocation with wrong boundaries.
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Program Files (x86)\Visual Leak Detector\include"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\build"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\build\src\lib_gui"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\app"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\trial"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\Qt5.5\5.5\msvc2013\include"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\Qt5.5\5.5\msvc2013\include\QtCore"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\Qt5.5\5.5\msvc2013\include\QtGui"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\Qt5.5\5.5\msvc2013\include\QtNetwork"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\Qt5.5\5.5\msvc2013\include\QtWidgets"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\Qt5.5\5.5\msvc2013\mkspecs\win32-msvc2013"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\boost_1_59_0"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\clang-11vm\build\include"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\clang-11vm\build\tools\clang\include"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\clang-11vm\llvm\include"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\clang-11vm\llvm\tools\clang\include"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\cxxtest-4.3"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\gameDevResources\eigen"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\projekte\code\2014_master_project\masterproject\bin\test\data/vsSolutionParserTestSuite/..\src\lib\utility\solution\SolutionParserCMake.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "D:\projekte\code\2014_master_project\masterproject\bin\test\data/vsSolutionParserTestSuite/..\src\lib\utility\solution\SolutionParserCMake.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\build\Coati.rc"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\build\Coati_lib_gui_automoc.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\build\src\lib_gui\version.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\build\test_main.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\app\data\parser\cxx\TaskParseCxx.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\app\isTrial.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\app\main.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\sqlite\CppSQLite3.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\sqlite\CppSQLite3.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\sqlite\sqlite3.c"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\sqlite\sqlite3.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\tinyxml\tinystr.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\tinyxml\tinystr.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\tinyxml\tinyxml.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\tinyxml\tinyxml.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\tinyxml\tinyxmlerror.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\external\tinyxml\tinyxmlparser.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\Application.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\Application.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\Project.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\Project.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\Component.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\Component.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\ComponentFactory.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\ComponentFactory.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\ComponentManager.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\ComponentManager.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\CodeController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\CodeController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\Controller.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\Controller.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\FeatureController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\FeatureController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\GraphController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\GraphController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\IDECommunicationController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\IDECommunicationController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\NetworkFactory.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\NetworkFactory.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\RefreshController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\RefreshController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\SearchController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\SearchController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\StatusBarController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\StatusBarController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\UndoRedoController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\UndoRedoController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\ActivationTranslator.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\ActivationTranslator.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\BucketGrid.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\BucketGrid.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\DummyEdge.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\DummyNode.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\GraphLayouter.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\GraphLayouter.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\GraphPostprocessor.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\GraphPostprocessor.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\NetworkProtocolHelper.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\NetworkProtocolHelper.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\SnippetMerger.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\controller\helper\SnippetMerger.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\CodeView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\CodeView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\CompositeView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\CompositeView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\GraphView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\GraphView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\GraphViewStyle.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\GraphViewStyle.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\GraphViewStyleImpl.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\MainView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\MainView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\RefreshView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\RefreshView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\SearchView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\SearchView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\StatusBarView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\StatusBarView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\UndoRedoView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\UndoRedoView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\View.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\View.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\ViewFactory.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\ViewFactory.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\ViewLayout.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\ViewLayout.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\ViewWidgetWrapper.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\component\view\ViewWidgetWrapper.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\HierarchyCache.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\HierarchyCache.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\SqliteStorage.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\SqliteStorage.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\Storage.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\Storage.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\StorageCache.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\StorageCache.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\StorageTypes.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\TaskCleanStorage.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\TaskCleanStorage.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\access\StorageAccess.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\access\StorageAccess.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\access\StorageAccessProxy.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\access\StorageAccessProxy.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\Edge.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\Edge.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\Graph.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\Graph.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\Node.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\Node.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\Token.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\Token.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponent.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponent.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentAbstraction.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentAbstraction.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentAccess.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentAccess.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentAggregation.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentAggregation.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentConst.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentConst.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentFilePath.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentFilePath.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentSignature.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentSignature.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentStatic.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\graph\token_component\TokenComponentStatic.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\location\TokenLocation.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\location\TokenLocation.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\location\TokenLocationCollection.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\location\TokenLocationCollection.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\location\TokenLocationFile.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\location\TokenLocationFile.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\location\TokenLocationLine.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\location\TokenLocationLine.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\name\NameElement.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\name\NameElement.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\name\NameHierarchy.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\name\NameHierarchy.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParseFunction.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParseFunction.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParseLocation.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParseLocation.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParseTypeUsage.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParseTypeUsage.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParseVariable.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParseVariable.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\Parser.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\Parser.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParserClient.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\ParserClient.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\parser\cxx\TaskParseCxx.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\search\SearchIndex.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\search\SearchIndex.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\search\SearchMatch.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\search\SearchMatch.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\search\SearchNode.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\search\SearchNode.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\search\SearchResult.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\search\SearchResult.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\ArrayModifiedDataType.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\ArrayModifiedDataType.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\DataType.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\DataType.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\ModifiedDataType.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\ModifiedDataType.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\NamedDataType.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\NamedDataType.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\PointerModifiedDataType.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\PointerModifiedDataType.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\ReferenceModifiedDataType.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\data\type\ReferenceModifiedDataType.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\isTrial.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\settings\ApplicationSettings.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\settings\ApplicationSettings.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\settings\ColorScheme.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\settings\ColorScheme.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\settings\ProjectSettings.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\settings\ProjectSettings.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\settings\Settings.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\settings\Settings.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\ConfigManager.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\ConfigManager.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\Property.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\TimePoint.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\TimePoint.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\Version.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\Version.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FileInfo.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FileInfo.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FileManager.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FileManager.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FilePath.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FilePath.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FileRegister.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FileRegister.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FileSystem.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\file\FileSystem.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\ConsoleLogger.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\ConsoleLogger.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\FileLogger.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\FileLogger.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\LogManager.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\LogManager.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\LogManagerImplementation.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\LogManagerImplementation.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\LogMessage.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\Logger.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\Logger.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\PlainFileLogger.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\PlainFileLogger.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\logging\logging.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\math\Color.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\math\MatrixBase.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\math\MatrixDynamicBase.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\math\Vector2.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\math\Vector4.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\math\VectorBase.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\Message.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\MessageBase.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\MessageListener.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\MessageListenerBase.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\MessageListenerBase.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\MessageQueue.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\MessageQueue.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageActivateEdge.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageActivateFile.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageActivateNodes.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageActivateTokenLocations.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageActivateTokens.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageActivateWindow.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageAutoRefreshChanged.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageDeactivateEdge.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageFind.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageFinishedParsing.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageFlushUpdates.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageFocusIn.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageFocusOut.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageGraphNodeBundleSplit.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageGraphNodeExpand.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageGraphNodeMove.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageInterruptTasks.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageLoadProject.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageMoveIDECursor.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageRedo.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageRefresh.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageResetZoom.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageSaveProject.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageSearch.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageSearchAutocomplete.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageShowErrors.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageShowFile.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageShowScope.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageShowSnippets.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageStatus.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageSwitchColorScheme.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageUndo.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageWindowFocus.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\messaging\type\MessageZoom.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\LambdaTask.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\LambdaTask.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\SimpleTask.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\SimpleTask.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\Task.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\Task.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\TaskGroup.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\TaskGroup.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\TaskGroupSequential.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\TaskGroupSequential.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\TaskScheduler.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\scheduling\TaskScheduler.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\solution\ISolutionParser.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\solution\ISolutionParser.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\solution\SolutionParserVisualStudio.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\solution\SolutionParserVisualStudio.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\text\Dictionary.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\text\Dictionary.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\text\TextAccess.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\text\TextAccess.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\types.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\utility.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\utility.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\utilityString.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib\utility\utilityString.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\platform_includes\includesDefault.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\platform_includes\includesMac.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\platform_includes\includesWindows.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtAutocompletionList.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtAutocompletionList.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtCodeArea.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtCodeArea.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtCodeFile.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtCodeFile.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtCodeFileList.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtCodeFileList.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtCodeSnippet.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtCodeSnippet.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtDirectoryListBox.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtDirectoryListBox.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtLineEdit.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtLineEdit.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtRefreshBar.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtRefreshBar.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtSearchBar.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtSearchBar.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtSmartSearchBox.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtSmartSearchBox.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtStatusBar.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtStatusBar.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtUndoRedo.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\element\QtUndoRedo.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\graphics\QtAngledLineItem.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\graphics\QtAngledLineItem.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\graphics\QtCountCircleItem.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\graphics\QtCountCircleItem.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\graphics\QtRoundedRectItem.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\graphics\QtRoundedRectItem.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\graphics\QtStraightLineItem.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\graphics\QtStraightLineItem.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\network\QtIDECommunicationController.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\network\QtIDECommunicationController.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\network\QtNetworkFactory.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\network\QtNetworkFactory.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\network\QtTcpWrapper.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\network\QtTcpWrapper.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\utility\QtDeviceScaledPixmap.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\utility\QtDeviceScaledPixmap.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\utility\QtHighlighter.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\utility\QtHighlighter.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\utility\QtThreadedFunctor.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\utility\utilityQt.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\utility\utilityQt.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtCodeView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtCodeView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtCompositeView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtCompositeView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtGraphView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtGraphView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtGraphViewStyleImpl.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtGraphViewStyleImpl.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtMainView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtMainView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtRefreshView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtRefreshView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtSearchView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtSearchView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtStatusBarView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtStatusBarView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtUndoRedoView.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtUndoRedoView.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtViewFactory.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtViewFactory.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtViewWidgetWrapper.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\QtViewWidgetWrapper.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphEdge.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphEdge.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNode.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNode.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNodeAccess.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNodeAccess.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNodeBundle.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNodeBundle.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNodeData.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNodeData.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNodeExpandToggle.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\QtGraphNodeExpandToggle.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\nodeComponents\QtGraphNodeComponent.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\nodeComponents\QtGraphNodeComponent.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\nodeComponents\QtGraphNodeComponentClickable.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\nodeComponents\QtGraphNodeComponentClickable.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\nodeComponents\QtGraphNodeComponentMoveable.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\view\graphElements\nodeComponents\QtGraphNodeComponentMoveable.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtAbout.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtAbout.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtAboutLicense.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtAboutLicense.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtApplicationSettingsScreen.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtApplicationSettingsScreen.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtMainWindow.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtMainWindow.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtProjectSetupScreen.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtProjectSetupScreen.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtSettingsWindow.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtSettingsWindow.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtSplashScreen.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtSplashScreen.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtStartScreen.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_gui\qt\window\QtStartScreen.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTAction.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTAction.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTActionFactory.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTActionFactory.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTBodyVisitor.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTBodyVisitor.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTBodyVisitorClient.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTBodyVisitorClient.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTConsumer.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTConsumer.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTVisitor.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\ASTVisitor.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\CommentHandler.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\CommentHandler.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\CxxDiagnosticConsumer.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\CxxDiagnosticConsumer.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\CxxParser.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\CxxParser.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\PreprocessorCallbacks.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\PreprocessorCallbacks.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\name_resolver\CxxDeclNameResolver.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\name_resolver\CxxDeclNameResolver.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\name_resolver\CxxNameResolver.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\name_resolver\CxxNameResolver.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\name_resolver\CxxTemplateArgumentNameResolver.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\name_resolver\CxxTemplateArgumentNameResolver.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\name_resolver\CxxTypeNameResolver.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\name_resolver\CxxTypeNameResolver.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\utilityCxx.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\lib_parser\data\parser\cxx\utilityCxx.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\ConfigManagerTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\CxxParserTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\DataTypeTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\DictionaryTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\FileManagerTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\FilePathTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\FileSystemTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\GraphTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\LogManagerTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\MatrixBaseTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\MessageQueueTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\NetworkProtocolHelperTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\SearchIndexTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\SettingsTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\SqliteStorageTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\StorageTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\TaskSchedulerTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\TestSuiteFixture.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\TestSuiteFixture.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\TextAccessTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\TokenLocationCollectionTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\UtilityStringTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\Vector2TestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\VsSolutionParserTestSuite.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\helper\TestFileManager.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\helper\TestFileManager.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\helper\TestStorage.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\test\helper\TestStorage.h"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\trial\data\parser\cxx\TaskParseCxx.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\trial\isTrial.cpp"
|
||||
SolutionParserVisualStudio.cpp WARNING: boost::filesystem::canonical: No such file or directory: "C:\Users\Manuel\FH\MSc\Masterproject\Project\src\trial\main.cpp"
|
||||
|
||||
@@ -70,7 +70,7 @@ Task::TaskState TaskParseCxx::update()
|
||||
|
||||
MessageStatus(ss.str(), false, true).dispatch();
|
||||
|
||||
m_client->prepareParsingFile(sourcePath);
|
||||
m_client->startParsingFile(sourcePath);
|
||||
|
||||
m_parser->runTool(std::vector<std::string>(1, sourcePath.str()));
|
||||
|
||||
|
||||
@@ -291,6 +291,7 @@ add_files(
|
||||
utility/Property.h
|
||||
utility/ResourcePaths.cpp
|
||||
utility/ResourcePaths.h
|
||||
utility/ScopedSwitcher.h
|
||||
utility/TimePoint.cpp
|
||||
utility/TimePoint.h
|
||||
utility/types.h
|
||||
|
||||
@@ -405,7 +405,7 @@ std::vector<CodeSnippetParams> CodeController::getSnippetsForFile(std::shared_pt
|
||||
)->forEachStartTokenLocation( // this TokenLocationFile only contains a single StartTokenLocation.
|
||||
[&](TokenLocation* location)
|
||||
{
|
||||
params.title = m_storageAccess->getNameHierarchyForNodeWithId(location->getTokenId()).getFullName();
|
||||
params.title = m_storageAccess->getNameHierarchyForNodeWithId(location->getTokenId()).getQualifiedName();
|
||||
params.titleId = location->getId();
|
||||
}
|
||||
);
|
||||
@@ -430,7 +430,7 @@ std::vector<CodeSnippetParams> CodeController::getSnippetsForFile(std::shared_pt
|
||||
)->forEachStartTokenLocation( // this TokenLocationFile only contains a single StartTokenLocation.
|
||||
[&](TokenLocation* location)
|
||||
{
|
||||
params.footer = m_storageAccess->getNameHierarchyForNodeWithId(location->getTokenId()).getFullName();
|
||||
params.footer = m_storageAccess->getNameHierarchyForNodeWithId(location->getTokenId()).getQualifiedName();
|
||||
params.footerId = location->getId();
|
||||
}
|
||||
);
|
||||
|
||||
@@ -55,10 +55,12 @@ void UndoRedoController::handleMessage(MessageActivateFile* message)
|
||||
|
||||
void UndoRedoController::handleMessage(MessageActivateNodes* message)
|
||||
{
|
||||
if (m_lastCommand.message && m_lastCommand.message->getType() == message->getType() && message->nodes.size() &&
|
||||
if (m_lastCommand.message &&
|
||||
m_lastCommand.message->getType() == message->getType() &&
|
||||
message->nodes.size() &&
|
||||
static_cast<MessageActivateNodes*>(m_lastCommand.message.get())->nodes.size() == message->nodes.size() &&
|
||||
static_cast<MessageActivateNodes*>(m_lastCommand.message.get())->nodes[0].nameHierarchy.getFullName() ==
|
||||
message->nodes[0].nameHierarchy.getFullName())
|
||||
static_cast<MessageActivateNodes*>(m_lastCommand.message.get())->nodes[0].nameHierarchy.getQualifiedNameWithSignature() ==
|
||||
message->nodes[0].nameHierarchy.getQualifiedNameWithSignature())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
+78
-248
@@ -177,7 +177,7 @@ void Storage::finishParsing()
|
||||
buildHierarchyCache();
|
||||
}
|
||||
|
||||
void Storage::prepareParsingFile(const FilePath& filePath)
|
||||
void Storage::startParsingFile(const FilePath& filePath)
|
||||
{
|
||||
m_sqliteStorage.beginTransaction();
|
||||
}
|
||||
@@ -214,32 +214,26 @@ size_t Storage::getErrorCount() const
|
||||
}
|
||||
|
||||
Id Storage::onTypedefParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, const ParseTypeUsage& underlyingType,
|
||||
AccessType access
|
||||
const ParseLocation& location, const NameHierarchy& typedefName, AccessType access
|
||||
){
|
||||
log("typedef", nameHierarchy.getFullName() + " -> " + underlyingType.dataType->getFullTypeName(), location);
|
||||
log("typedef", typedefName.getQualifiedName(), location);
|
||||
|
||||
Id typedefNodeId = addNodeHierarchy(Node::NODE_TYPEDEF, nameHierarchy, true);
|
||||
addSourceLocation(typedefNodeId, location);
|
||||
addAccess(typedefNodeId, access);
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_TYPEDEF, typedefName, true);
|
||||
addSourceLocation(nodeId, location);
|
||||
addAccess(nodeId, access);
|
||||
|
||||
Id underlyingTypeNodeId = addNodeHierarchy(Node::NODE_TYPE, underlyingType.dataType->getTypeNameHierarchy(), false);
|
||||
addEdge(typedefNodeId, underlyingTypeNodeId, Edge::EDGE_TYPEDEF_OF, location);
|
||||
|
||||
return typedefNodeId;
|
||||
return nodeId;
|
||||
}
|
||||
|
||||
Id Storage::onClassParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation
|
||||
){
|
||||
log("class", nameHierarchy.getFullName(), location);
|
||||
log("class", nameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_CLASS, nameHierarchy, scopeLocation.isValid());
|
||||
|
||||
addSourceLocation(nodeId, location);
|
||||
addSourceLocation(nodeId, scopeLocation, true);
|
||||
|
||||
addAccess(nodeId, access);
|
||||
|
||||
return nodeId;
|
||||
@@ -249,63 +243,43 @@ Id Storage::onStructParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation
|
||||
){
|
||||
log("struct", nameHierarchy.getFullName(), location);
|
||||
log("struct", nameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_STRUCT, nameHierarchy, scopeLocation.isValid());
|
||||
|
||||
addSourceLocation(nodeId, location);
|
||||
addSourceLocation(nodeId, scopeLocation, true);
|
||||
|
||||
addAccess(nodeId, access);
|
||||
|
||||
return nodeId;
|
||||
}
|
||||
|
||||
Id Storage::onGlobalVariableParsed(const ParseLocation& location, const ParseVariable& variable)
|
||||
Id Storage::onGlobalVariableParsed(const ParseLocation& location, const NameHierarchy& variable)
|
||||
{
|
||||
log("global", variable.getFullName(), location);
|
||||
log("global", variable.getQualifiedName(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_GLOBAL_VARIABLE, variable.nameHierarchy, true);
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_GLOBAL_VARIABLE, variable, true);
|
||||
addSourceLocation(nodeId, location);
|
||||
|
||||
Id typeNodeId = addNodeHierarchy(Node::NODE_TYPE, variable.type.dataType->getTypeNameHierarchy(), false);
|
||||
addEdge(nodeId, typeNodeId, Edge::EDGE_TYPE_OF, location);
|
||||
|
||||
return nodeId;
|
||||
}
|
||||
|
||||
Id Storage::onFieldParsed(const ParseLocation& location, const ParseVariable& variable, AccessType access)
|
||||
Id Storage::onFieldParsed(const ParseLocation& location, const NameHierarchy& field, AccessType access)
|
||||
{
|
||||
log("field", variable.getFullName(), location);
|
||||
log("field", field.getQualifiedName(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_FIELD, variable.nameHierarchy, true);
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_FIELD, field, true);
|
||||
addSourceLocation(nodeId, location);
|
||||
addAccess(nodeId, access);
|
||||
|
||||
Id typeNodeId = addNodeHierarchy(Node::NODE_TYPE, variable.type.dataType->getTypeNameHierarchy(), false);
|
||||
addEdge(nodeId, typeNodeId, Edge::EDGE_TYPE_OF, variable.type.location);
|
||||
|
||||
return nodeId;
|
||||
}
|
||||
|
||||
Id Storage::onFunctionParsed(
|
||||
const ParseLocation& location, const ParseFunction& function, const ParseLocation& scopeLocation
|
||||
const ParseLocation& location, const NameHierarchy& function, const ParseLocation& scopeLocation
|
||||
){
|
||||
log("function", function.getFullName(), location);
|
||||
log("function", function.getQualifiedNameWithSignature(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_FUNCTION, function, true);
|
||||
|
||||
Id returnTypeNodeId = addNodeHierarchy(Node::NODE_TYPE, function.returnType.dataType->getTypeNameHierarchy(), false);
|
||||
addEdge(nodeId, returnTypeNodeId, Edge::EDGE_TYPE_USAGE, function.returnType.location);
|
||||
// addEdge(nodeId, returnTypeNodeId, Edge::EDGE_RETURN_TYPE_OF, function.returnType.location);
|
||||
|
||||
for (size_t i = 0; i < function.parameters.size(); i++)
|
||||
{
|
||||
Id parameternTypeNodeId = addNodeHierarchy(Node::NODE_TYPE, function.parameters[i].dataType->getTypeNameHierarchy(), false);
|
||||
addEdge(nodeId, parameternTypeNodeId, Edge::EDGE_TYPE_USAGE, function.parameters[i].location);
|
||||
// addEdge(nodeId, parameternTypeNodeId, Edge::EDGE_PARAMETER_TYPE_OF, function.parameters[i].location);
|
||||
}
|
||||
|
||||
addSourceLocation(nodeId, location);
|
||||
addSourceLocation(nodeId, scopeLocation, true);
|
||||
|
||||
@@ -313,40 +287,25 @@ Id Storage::onFunctionParsed(
|
||||
}
|
||||
|
||||
Id Storage::onMethodParsed(
|
||||
const ParseLocation& location, const ParseFunction& method, AccessType access, AbstractionType abstraction,
|
||||
const ParseLocation& location, const NameHierarchy& method, AccessType access, AbstractionType abstraction,
|
||||
const ParseLocation& scopeLocation
|
||||
){
|
||||
log("method", method.getFullName(), location);
|
||||
log("method", method.getQualifiedNameWithSignature(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_METHOD, method, location.isValid() && scopeLocation.isValid());
|
||||
addSourceLocation(nodeId, location);
|
||||
addSourceLocation(nodeId, scopeLocation, true);
|
||||
addAccess(nodeId, access);
|
||||
|
||||
if (method.returnType.location.isValid())
|
||||
{
|
||||
Id returnTypeNodeId = addNodeHierarchy(Node::NODE_TYPE, method.returnType.dataType->getTypeNameHierarchy(), false);
|
||||
addEdge(nodeId, returnTypeNodeId, Edge::EDGE_TYPE_USAGE, method.returnType.location);
|
||||
// addEdge(nodeId, returnTypeNodeId, Edge::EDGE_RETURN_TYPE_OF, method.returnType.location);
|
||||
}
|
||||
|
||||
for (size_t i = 0; i < method.parameters.size(); i++)
|
||||
{
|
||||
Id parameternTypeNodeId = addNodeHierarchy(Node::NODE_TYPE, method.parameters[i].dataType->getTypeNameHierarchy(), false);
|
||||
addEdge(nodeId, parameternTypeNodeId, Edge::EDGE_TYPE_USAGE, method.parameters[i].location);
|
||||
// addEdge(nodeId, parameternTypeNodeId, Edge::EDGE_PARAMETER_TYPE_OF, method.parameters[i].location);
|
||||
}
|
||||
|
||||
return nodeId;
|
||||
}
|
||||
|
||||
Id Storage::onNamespaceParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, const ParseLocation& scopeLocation
|
||||
){
|
||||
log("namespace", nameHierarchy.getFullName(), location);
|
||||
log("namespace", nameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_NAMESPACE, nameHierarchy, true);
|
||||
|
||||
addSourceLocation(nodeId, location);
|
||||
addSourceLocation(nodeId, scopeLocation, true);
|
||||
|
||||
@@ -357,7 +316,7 @@ Id Storage::onEnumParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation
|
||||
){
|
||||
log("enum", nameHierarchy.getFullName(), location);
|
||||
log("enum", nameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_ENUM, nameHierarchy, true);
|
||||
|
||||
@@ -370,7 +329,7 @@ Id Storage::onEnumParsed(
|
||||
|
||||
Id Storage::onEnumConstantParsed(const ParseLocation& location, const NameHierarchy& nameHierarchy)
|
||||
{
|
||||
log("enum constant", nameHierarchy.getFullName(), location);
|
||||
log("enum constant", nameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id nodeId = addNodeHierarchy(Node::NODE_ENUM_CONSTANT, nameHierarchy, true);
|
||||
|
||||
@@ -383,7 +342,7 @@ Id Storage::onInheritanceParsed(
|
||||
const ParseLocation& location, const NameHierarchy& childNameHierarchy,
|
||||
const NameHierarchy& parentNameHierarchy, AccessType access
|
||||
){
|
||||
log("inheritance", childNameHierarchy.getFullName() + " : " + parentNameHierarchy.getFullName(), location);
|
||||
log("inheritance", childNameHierarchy.getQualifiedName() + " : " + parentNameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id childNodeId = addNodeHierarchy(Node::NODE_TYPE, childNameHierarchy, false);
|
||||
Id parentNodeId = addNodeHierarchy(Node::NODE_TYPE, parentNameHierarchy, false);
|
||||
@@ -394,11 +353,11 @@ Id Storage::onInheritanceParsed(
|
||||
}
|
||||
|
||||
Id Storage::onMethodOverrideParsed(
|
||||
const ParseLocation& location, const ParseFunction& base, const ParseFunction& overrider)
|
||||
const ParseLocation& location, const NameHierarchy& overridden, const NameHierarchy& overrider)
|
||||
{
|
||||
log("override", base.getFullName() + " -> " + overrider.getFullName(), location);
|
||||
log("override", overridden.getQualifiedNameWithSignature() + " -> " + overrider.getQualifiedNameWithSignature(), location);
|
||||
|
||||
Id baseNodeId = addNodeHierarchy(Node::NODE_FUNCTION, base, false); // TODO: call this overridden
|
||||
Id baseNodeId = addNodeHierarchy(Node::NODE_FUNCTION, overridden, false);
|
||||
Id overriderNodeId = addNodeHierarchy(Node::NODE_FUNCTION, overrider, false);
|
||||
|
||||
Id edgeId = addEdge(overriderNodeId, baseNodeId, Edge::EDGE_OVERRIDE, location);
|
||||
@@ -406,9 +365,9 @@ Id Storage::onMethodOverrideParsed(
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onCallParsed(const ParseLocation& location, const ParseFunction& caller, const ParseFunction& callee)
|
||||
Id Storage::onCallParsed(const ParseLocation& location, const NameHierarchy& caller, const NameHierarchy& callee)
|
||||
{
|
||||
log("call", caller.getFullName() + " -> " + callee.getFullName(), location);
|
||||
log("call", caller.getQualifiedNameWithSignature() + " -> " + callee.getQualifiedNameWithSignature(), location);
|
||||
|
||||
Id callerNodeId = addNodeHierarchy(Node::NODE_FUNCTION, caller, false);
|
||||
Id calleeNodeId = addNodeHierarchy(Node::NODE_FUNCTION, callee, false);
|
||||
@@ -418,37 +377,12 @@ Id Storage::onCallParsed(const ParseLocation& location, const ParseFunction& cal
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onCallParsed(const ParseLocation& location, const ParseVariable& caller, const ParseFunction& callee)
|
||||
{
|
||||
log("call", caller.getFullName() + " -> " + callee.getFullName(), location);
|
||||
|
||||
Id callerNodeId = addNodeHierarchy(Node::NODE_UNDEFINED, caller.nameHierarchy, false);
|
||||
Id calleeNodeId = addNodeHierarchy(Node::NODE_FUNCTION, callee, false);
|
||||
|
||||
Id edgeId = addEdge(callerNodeId, calleeNodeId, Edge::EDGE_CALL, location);
|
||||
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onFieldUsageParsed(
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy
|
||||
){
|
||||
log("field usage", user.getFullName() + " -> " + usedNameHierarchy.getFullName(), location);
|
||||
log("field usage", userNameHierarchy.getQualifiedNameWithSignature() + " -> " + usedNameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_FUNCTION, user, false);
|
||||
Id usedNodeId = addNodeHierarchy(Node::NODE_FIELD, usedNameHierarchy, false);
|
||||
|
||||
Id edgeId = addEdge(userNodeId, usedNodeId, Edge::EDGE_USAGE, location);
|
||||
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onFieldUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy
|
||||
){
|
||||
log("global usage", user.getFullName() + " -> " + usedNameHierarchy.getFullName(), location);
|
||||
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_FUNCTION, user.nameHierarchy, false);
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_FUNCTION, userNameHierarchy, false);
|
||||
Id usedNodeId = addNodeHierarchy(Node::NODE_FIELD, usedNameHierarchy, false);
|
||||
|
||||
Id edgeId = addEdge(userNodeId, usedNodeId, Edge::EDGE_USAGE, location);
|
||||
@@ -457,24 +391,11 @@ Id Storage::onFieldUsageParsed(
|
||||
}
|
||||
|
||||
Id Storage::onGlobalVariableUsageParsed( // or static variable used
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy
|
||||
){
|
||||
log("global usage", user.getFullName() + " -> " + usedNameHierarchy.getFullName(), location);
|
||||
log("global usage", userNameHierarchy.getQualifiedNameWithSignature() + " -> " + usedNameHierarchy.getQualifiedNameWithSignature(), location);
|
||||
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_FUNCTION, user, false);
|
||||
Id usedNodeId = addNodeHierarchy(Node::NODE_GLOBAL_VARIABLE, usedNameHierarchy, false);
|
||||
|
||||
Id edgeId = addEdge(userNodeId, usedNodeId, Edge::EDGE_USAGE, location);
|
||||
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onGlobalVariableUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy)
|
||||
{
|
||||
log("global usage", user.getFullName() + " -> " + usedNameHierarchy.getFullName(), location);
|
||||
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_GLOBAL_VARIABLE, user.nameHierarchy, false);
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_FUNCTION, userNameHierarchy, false);
|
||||
Id usedNodeId = addNodeHierarchy(Node::NODE_GLOBAL_VARIABLE, usedNameHierarchy, false);
|
||||
|
||||
Id edgeId = addEdge(userNodeId, usedNodeId, Edge::EDGE_USAGE, location);
|
||||
@@ -483,99 +404,47 @@ Id Storage::onGlobalVariableUsageParsed(
|
||||
}
|
||||
|
||||
Id Storage::onEnumConstantUsageParsed(
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy
|
||||
){
|
||||
log("enum constant usage", user.getFullName() + " -> " + usedNameHierarchy.getFullName(), location);
|
||||
log("enum constant usage", userNameHierarchy.getQualifiedNameWithSignature() + " -> " + usedNameHierarchy.getQualifiedNameWithSignature(), location);
|
||||
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_FUNCTION, user, false);
|
||||
Id usedNodeId = addNodeHierarchy(Node::NODE_GLOBAL_VARIABLE, usedNameHierarchy, false);
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_UNDEFINED, userNameHierarchy, false);
|
||||
Id usedNodeId = addNodeHierarchy(Node::NODE_ENUM_CONSTANT, usedNameHierarchy, false);
|
||||
|
||||
Id edgeId = addEdge(userNodeId, usedNodeId, Edge::EDGE_USAGE, location);
|
||||
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onEnumConstantUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy
|
||||
){
|
||||
log("enum constant usage", user.getFullName() + " -> " + usedNameHierarchy.getFullName(), location);
|
||||
|
||||
Id userNodeId = addNodeHierarchy(Node::NODE_FUNCTION, user.nameHierarchy, false);
|
||||
Id usedNodeId = addNodeHierarchy(Node::NODE_GLOBAL_VARIABLE, usedNameHierarchy, false);
|
||||
|
||||
Id edgeId = addEdge(userNodeId, usedNodeId, Edge::EDGE_USAGE, location);
|
||||
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onTypeUsageParsed(const ParseTypeUsage& typeUsage, const ParseFunction& function) // check if type has valid location
|
||||
Id Storage::onTypeUsageParsed(const ParseLocation& location, const NameHierarchy& user, const NameHierarchy& used)
|
||||
{
|
||||
log("type usage", function.getFullName() + " -> " + typeUsage.dataType->getRawTypeName(), typeUsage.location);
|
||||
log("type usage", user.getQualifiedNameWithSignature() + " -> " + used.getQualifiedName(), location);
|
||||
|
||||
if (!typeUsage.location.isValid())
|
||||
if (!location.isValid())
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
Id functionNodeId = addNodeHierarchy(Node::NODE_FUNCTION, function, false);
|
||||
Id typeNodeId = addNodeHierarchy(Node::NODE_TYPE, typeUsage.dataType->getTypeNameHierarchy(), false);
|
||||
Id functionNodeId = addNodeHierarchy(Node::NODE_UNDEFINED, user, false);
|
||||
Id typeNodeId = addNodeHierarchy(Node::NODE_TYPE, used, false);
|
||||
|
||||
Id edgeId = addEdge(functionNodeId, typeNodeId, Edge::EDGE_TYPE_USAGE, typeUsage.location);
|
||||
Id edgeId = addEdge(functionNodeId, typeNodeId, Edge::EDGE_TYPE_USAGE, location);
|
||||
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onTypeUsageParsed(const ParseTypeUsage& typeUsage, const ParseVariable& variable)
|
||||
{
|
||||
log("type usage", variable.getFullName() + " -> " + typeUsage.dataType->getRawTypeName(), typeUsage.location);
|
||||
|
||||
if (!typeUsage.location.isValid())
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
Id functionNodeId = addNodeHierarchy(Node::NODE_UNDEFINED, variable.nameHierarchy, false);
|
||||
Id typeNodeId = addNodeHierarchy(Node::NODE_TYPE, typeUsage.dataType->getTypeNameHierarchy(), false);
|
||||
|
||||
Id edgeId = addEdge(functionNodeId, typeNodeId, Edge::EDGE_TYPE_USAGE, typeUsage.location);
|
||||
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onTemplateArgumentTypeOfTemplateRecordParsed(
|
||||
Id Storage::onTemplateArgumentTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& argumentTypeNameHierarchy,
|
||||
const NameHierarchy& templateNameHierarchy)
|
||||
{
|
||||
log(
|
||||
"template argument type",
|
||||
argumentTypeNameHierarchy.getFullName() + " -> " + templateNameHierarchy.getFullName(),
|
||||
argumentTypeNameHierarchy.getQualifiedName() + " -> " + templateNameHierarchy.getQualifiedName(),
|
||||
location
|
||||
);
|
||||
|
||||
Id argumentNodeId = addNodeHierarchy(Node::NODE_TYPE, argumentTypeNameHierarchy, false);
|
||||
// does not need a source location because this type that is already defined (and therefore has a location).
|
||||
|
||||
Id templateNodeId = addNodeHierarchy(Node::NODE_TYPE, templateNameHierarchy, false);
|
||||
|
||||
addEdge(templateNodeId, argumentNodeId, Edge::EDGE_TEMPLATE_ARGUMENT, location);
|
||||
|
||||
return argumentNodeId;
|
||||
}
|
||||
|
||||
Id Storage::onTemplateArgumentTypeOfTemplateFunctionParsed(
|
||||
const ParseLocation& location, const NameHierarchy& argumentTypeNameHierarchy,
|
||||
const ParseFunction& templateFunction)
|
||||
{
|
||||
log(
|
||||
"template argument type",
|
||||
argumentTypeNameHierarchy.getFullName() + " -> " + templateFunction.getFullName(),
|
||||
location
|
||||
);
|
||||
|
||||
Id argumentNodeId = addNodeHierarchy(Node::NODE_TYPE, argumentTypeNameHierarchy, false);
|
||||
// does not need a source location because this type that is already defined (and therefore has a location).
|
||||
|
||||
Id templateNodeId = addNodeHierarchy(Node::NODE_FUNCTION, templateFunction, false);
|
||||
Id templateNodeId = addNodeHierarchy(Node::NODE_UNDEFINED, templateNameHierarchy, false);
|
||||
|
||||
addEdge(templateNodeId, argumentNodeId, Edge::EDGE_TEMPLATE_ARGUMENT, location);
|
||||
|
||||
@@ -583,78 +452,62 @@ Id Storage::onTemplateArgumentTypeOfTemplateFunctionParsed(
|
||||
}
|
||||
|
||||
Id Storage::onTemplateDefaultArgumentTypeParsed(
|
||||
const ParseTypeUsage& defaultArgumentTypeUsage,
|
||||
const NameHierarchy& templateParameterNameHierarchy // actually this is the template parameter???
|
||||
const ParseLocation& location, const NameHierarchy& defaultArgumentTypeNameHierarchy,
|
||||
const NameHierarchy& templateParameterNameHierarchy
|
||||
){
|
||||
log(
|
||||
"template default argument",
|
||||
defaultArgumentTypeUsage.dataType->getTypeNameHierarchy().getFullName() + " -> " + templateParameterNameHierarchy.getFullName(),
|
||||
defaultArgumentTypeUsage.location
|
||||
defaultArgumentTypeNameHierarchy.getQualifiedNameWithSignature() + " -> " + templateParameterNameHierarchy.getQualifiedName(),
|
||||
location
|
||||
);
|
||||
|
||||
Id defaultArgumentNodeId = addNodeHierarchy(Node::NODE_TYPE, defaultArgumentTypeUsage.dataType->getTypeNameHierarchy(), false);
|
||||
// does not need a source location because this type that is already defined (and therefore has a location).
|
||||
Id defaultArgumentNodeId = addNodeHierarchy(Node::NODE_TYPE, defaultArgumentTypeNameHierarchy, false);
|
||||
Id parameterNodeId = addNodeHierarchy(Node::NODE_TYPE, templateParameterNameHierarchy, false);
|
||||
|
||||
Id argumentNodeId = addNodeHierarchy(Node::NODE_TYPE, templateParameterNameHierarchy, false);
|
||||
|
||||
addEdge(argumentNodeId, defaultArgumentNodeId, Edge::EDGE_TEMPLATE_DEFAULT_ARGUMENT, defaultArgumentTypeUsage.location);
|
||||
addEdge(parameterNodeId, defaultArgumentNodeId, Edge::EDGE_TEMPLATE_DEFAULT_ARGUMENT, location);
|
||||
|
||||
return defaultArgumentNodeId;
|
||||
}
|
||||
|
||||
Id Storage::onTemplateRecordParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy,
|
||||
const NameHierarchy& templateRecordNameHierarchy
|
||||
Id Storage::onTemplateParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy
|
||||
){
|
||||
log("template record type parameter", templateParameterTypeNameHierarchy.getFullName(), location);
|
||||
log("template parameter type", templateParameterTypeNameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id parameterNodeId = addNodeHierarchy(Node::NODE_TEMPLATE_PARAMETER_TYPE, templateParameterTypeNameHierarchy, true);
|
||||
addSourceLocation(parameterNodeId, location, false);
|
||||
addAccess(parameterNodeId, TokenComponentAccess::ACCESS_TEMPLATE);
|
||||
|
||||
addNodeHierarchy(Node::NODE_TYPE, templateRecordNameHierarchy, false);
|
||||
|
||||
return parameterNodeId;
|
||||
}
|
||||
|
||||
Id Storage::onTemplateRecordSpecializationParsed(
|
||||
const ParseLocation& location, const NameHierarchy& specializedRecordNameHierarchy,
|
||||
const RecordType specializedRecordType, const NameHierarchy& specializedFromNameHierarchy
|
||||
Id Storage::onTemplateSpecializationParsed(
|
||||
const ParseLocation& location, const NameHierarchy& specializedNameHierarchy,
|
||||
const NameHierarchy& specializedFromNameHierarchy
|
||||
){
|
||||
log(
|
||||
"template record specialization",
|
||||
specializedRecordNameHierarchy.getFullName() + " -> " + specializedFromNameHierarchy.getFullName(),
|
||||
specializedNameHierarchy.getQualifiedName() + " -> " + specializedFromNameHierarchy.getQualifiedName(),
|
||||
location
|
||||
);
|
||||
|
||||
Node::NodeType specializedRecordNodeType = Node::NODE_CLASS;
|
||||
if (specializedRecordType == ParserClient::RECORD_STRUCT)
|
||||
{
|
||||
specializedRecordNodeType = Node::NODE_STRUCT;
|
||||
}
|
||||
|
||||
Id specializedNodeId = addNodeHierarchy(specializedRecordNodeType, specializedRecordNameHierarchy, true);
|
||||
addSourceLocation(specializedNodeId, location, false);
|
||||
|
||||
Id specializedId = addNodeHierarchy(Node::NODE_TYPE, specializedNameHierarchy, false);
|
||||
Id recordNodeId = addNodeHierarchy(Node::NODE_TYPE, specializedFromNameHierarchy, false);
|
||||
addAccess(specializedNodeId, getAccess(recordNodeId));
|
||||
Id edgeId = addEdge(specializedId, recordNodeId, Edge::EDGE_TEMPLATE_SPECIALIZATION_OF, location);
|
||||
|
||||
addEdge(specializedNodeId, recordNodeId, Edge::EDGE_TEMPLATE_SPECIALIZATION_OF, location);
|
||||
|
||||
return specializedNodeId;
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onTemplateMemberFunctionSpecializationParsed(
|
||||
const ParseLocation& location, const ParseFunction& instantiatedFunction, const ParseFunction& specializedFunction
|
||||
const ParseLocation& location, const NameHierarchy& instantiatedFunction, const NameHierarchy& specializedFunction
|
||||
){
|
||||
log(
|
||||
"template member function specialization",
|
||||
instantiatedFunction.getFullName() + " -> " + specializedFunction.getFullName(),
|
||||
instantiatedFunction.getQualifiedNameWithSignature() + " -> " + specializedFunction.getQualifiedNameWithSignature(),
|
||||
location
|
||||
);
|
||||
|
||||
Id instantiatedFunctionNodeId = addNodeHierarchy(Node::NODE_FUNCTION, instantiatedFunction, false);
|
||||
|
||||
Id specializedFunctionNodeId = addNodeHierarchy(Node::NODE_FUNCTION, specializedFunction, false);
|
||||
|
||||
Id edgeId = addEdge(instantiatedFunctionNodeId, specializedFunctionNodeId, Edge::EDGE_TEMPLATE_MEMBER_SPECIALIZATION_OF, location);
|
||||
@@ -662,34 +515,16 @@ Id Storage::onTemplateMemberFunctionSpecializationParsed(
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onTemplateFunctionParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy, const ParseFunction function
|
||||
){
|
||||
log("template function type parameter", templateParameterTypeNameHierarchy.getFullName(), location);
|
||||
|
||||
Id parameterNodeId = addNodeHierarchy(Node::NODE_TEMPLATE_PARAMETER_TYPE, templateParameterTypeNameHierarchy, true);
|
||||
addSourceLocation(parameterNodeId, location, false);
|
||||
addAccess(parameterNodeId, TokenComponentAccess::ACCESS_TEMPLATE);
|
||||
|
||||
addNodeHierarchy(Node::NODE_FUNCTION, function, false);
|
||||
|
||||
return parameterNodeId;
|
||||
}
|
||||
|
||||
Id Storage::onTemplateFunctionSpecializationParsed(
|
||||
const ParseLocation& location, const ParseFunction specializedFunction, const ParseFunction templateFunction
|
||||
const ParseLocation& location, const NameHierarchy specializedFunction, const NameHierarchy templateFunction
|
||||
){
|
||||
log("function template specialization", specializedFunction.getFullName(), location);
|
||||
log("function template specialization", specializedFunction.getQualifiedNameWithSignature(), location);
|
||||
|
||||
Id specializedNodeId = addNodeHierarchy(Node::NODE_FUNCTION, specializedFunction, true);
|
||||
addSourceLocation(specializedNodeId, location, false);
|
||||
Id specializedNodeId = addNodeHierarchy(Node::NODE_TYPE, specializedFunction, true);
|
||||
Id functionNodeId = addNodeHierarchy(Node::NODE_TYPE, templateFunction, false);
|
||||
Id edgeId = addEdge(specializedNodeId, functionNodeId, Edge::EDGE_TEMPLATE_SPECIALIZATION_OF, location);
|
||||
|
||||
Id functionNodeId = addNodeHierarchy(Node::NODE_FUNCTION, templateFunction, false);
|
||||
addAccess(specializedNodeId, getAccess(functionNodeId));
|
||||
|
||||
addEdge(specializedNodeId, functionNodeId, Edge::EDGE_TEMPLATE_SPECIALIZATION_OF, location);
|
||||
|
||||
return specializedNodeId;
|
||||
return edgeId;
|
||||
}
|
||||
|
||||
Id Storage::onFileParsed(const FileInfo& fileInfo)
|
||||
@@ -727,7 +562,7 @@ Id Storage::onFileIncludeParsed(const ParseLocation& location, const FileInfo& f
|
||||
Id Storage::onMacroDefineParsed(
|
||||
const ParseLocation& location, const NameHierarchy& macroNameHierarchy, const ParseLocation& scopeLocation
|
||||
){
|
||||
log("macro", macroNameHierarchy.getFullName(), location);
|
||||
log("macro", macroNameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id macroId = addNodeHierarchy(Node::NODE_MACRO, macroNameHierarchy, true);
|
||||
addSourceLocation(macroId, location);
|
||||
@@ -741,7 +576,7 @@ Id Storage::onMacroDefineParsed(
|
||||
|
||||
Id Storage::onMacroExpandParsed(const ParseLocation &location, const NameHierarchy& macroNameHierarchy)
|
||||
{
|
||||
log("macro use", macroNameHierarchy.getFullName(), location);
|
||||
log("macro use", macroNameHierarchy.getQualifiedName(), location);
|
||||
|
||||
Id macroExpandId = addNodeHierarchy(Node::NODE_MACRO, macroNameHierarchy, false);
|
||||
Id fileNodeId = getFileNodeId(location.filePath);
|
||||
@@ -1399,7 +1234,7 @@ Id Storage::addNodeHierarchy(Node::NodeType nodeType, NameHierarchy nameHierarch
|
||||
else if (isLastElement) // Update the type of the last node if the new type is more specific.
|
||||
{
|
||||
Node::NodeType storedType = Node::intToType(node.type);
|
||||
if (type > storedType)
|
||||
if (!node.defined && type > storedType)
|
||||
{
|
||||
m_sqliteStorage.setNodeType(Node::typeToInt(type), nodeId);
|
||||
}
|
||||
@@ -1411,11 +1246,6 @@ Id Storage::addNodeHierarchy(Node::NodeType nodeType, NameHierarchy nameHierarch
|
||||
return parentNodeId;
|
||||
}
|
||||
|
||||
Id Storage::addNodeHierarchy(Node::NodeType type, const ParseFunction& function, bool defined)
|
||||
{
|
||||
return addNodeHierarchy(type, function.nameHierarchy, defined);
|
||||
}
|
||||
|
||||
Id Storage::addSourceLocation(Id elementNodeId, const ParseLocation &location, bool isScope)
|
||||
{
|
||||
if (!location.isValid())
|
||||
@@ -1671,11 +1501,11 @@ void Storage::addNodesToGraph(const std::vector<Id> nodeIds, Graph* graph) const
|
||||
|
||||
if (type == Node::NODE_FUNCTION || type == Node::NODE_METHOD)
|
||||
{
|
||||
std::shared_ptr<NameElement> lastElement = nameHierarchy.back();
|
||||
if (lastElement)
|
||||
std::string signatureString = nameHierarchy.getRawNameWithSignature();
|
||||
if (signatureString.size() > 0) // this should always be the case since functions and methods must have sigs.
|
||||
{
|
||||
node->addComponentSignature(
|
||||
std::make_shared<TokenComponentSignature>(lastElement->getFullSignature())
|
||||
std::make_shared<TokenComponentSignature>(signatureString)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
+22
-42
@@ -43,34 +43,29 @@ public:
|
||||
virtual void startParsing();
|
||||
virtual void finishParsing();
|
||||
|
||||
virtual void prepareParsingFile(const FilePath& filePath);
|
||||
virtual void startParsingFile(const FilePath& filePath);
|
||||
virtual void finishParsingFile(const FilePath& filePath);
|
||||
|
||||
virtual void onError(const ParseLocation& location, const std::string& message);
|
||||
virtual size_t getErrorCount() const;
|
||||
|
||||
virtual Id onTypedefParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy,
|
||||
const ParseTypeUsage& underlyingType, AccessType access);
|
||||
const ParseLocation& location, const NameHierarchy& typedefName, AccessType access);
|
||||
virtual Id onClassParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation);
|
||||
virtual Id onStructParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation);
|
||||
|
||||
virtual Id onGlobalVariableParsed(const ParseLocation& location, const ParseVariable& variable);
|
||||
virtual Id onFieldParsed(const ParseLocation& location, const ParseVariable& variable, AccessType access);
|
||||
|
||||
virtual Id onGlobalVariableParsed(const ParseLocation& location, const NameHierarchy& variable);
|
||||
virtual Id onFieldParsed(const ParseLocation& location, const NameHierarchy& field, AccessType access);
|
||||
virtual Id onFunctionParsed(
|
||||
const ParseLocation& location, const ParseFunction& function, const ParseLocation& scopeLocation);
|
||||
const ParseLocation& location, const NameHierarchy& function, const ParseLocation& scopeLocation);
|
||||
virtual Id onMethodParsed(
|
||||
const ParseLocation& location, const ParseFunction& method, AccessType access, AbstractionType abstraction,
|
||||
const ParseLocation& location, const NameHierarchy& method, AccessType access, AbstractionType abstraction,
|
||||
const ParseLocation& scopeLocation);
|
||||
|
||||
virtual Id onNamespaceParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, const ParseLocation& scopeLocation);
|
||||
|
||||
virtual Id onEnumParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation);
|
||||
@@ -80,47 +75,33 @@ public:
|
||||
const ParseLocation& location, const NameHierarchy& childNameHierarchy,
|
||||
const NameHierarchy& parentNameHierarchy, AccessType access);
|
||||
virtual Id onMethodOverrideParsed(
|
||||
const ParseLocation& location, const ParseFunction& base, const ParseFunction& overrider);
|
||||
const ParseLocation& location, const NameHierarchy& overridden, const NameHierarchy& overrider);
|
||||
virtual Id onCallParsed(
|
||||
const ParseLocation& location, const ParseFunction& caller, const ParseFunction& callee);
|
||||
virtual Id onCallParsed(
|
||||
const ParseLocation& location, const ParseVariable& caller, const ParseFunction& callee);
|
||||
const ParseLocation& location, const NameHierarchy& caller, const NameHierarchy& callee);
|
||||
virtual Id onFieldUsageParsed(
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy);
|
||||
virtual Id onFieldUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy);
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy);
|
||||
virtual Id onGlobalVariableUsageParsed(
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy);
|
||||
virtual Id onGlobalVariableUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy);
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy);
|
||||
virtual Id onEnumConstantUsageParsed(
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy);
|
||||
virtual Id onEnumConstantUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy);
|
||||
virtual Id onTypeUsageParsed(const ParseTypeUsage& typeUsage, const ParseFunction& function);
|
||||
virtual Id onTypeUsageParsed(const ParseTypeUsage& typeUsage, const ParseVariable& variable);
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy);
|
||||
virtual Id onTypeUsageParsed(const ParseLocation& location, const NameHierarchy& user, const NameHierarchy& used);
|
||||
|
||||
virtual Id onTemplateArgumentTypeOfTemplateRecordParsed(
|
||||
virtual Id onTemplateArgumentTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& argumentTypeNameHierarchy,
|
||||
const NameHierarchy& templateNameHierarchy);
|
||||
virtual Id onTemplateArgumentTypeOfTemplateFunctionParsed(
|
||||
const ParseLocation& location, const NameHierarchy& argumentTypeNameHierarchy,
|
||||
const ParseFunction& templateFunction);
|
||||
virtual Id onTemplateDefaultArgumentTypeParsed(
|
||||
const ParseTypeUsage& defaultArgumentTypeUsage, const NameHierarchy& templateParameterNameHierarchy);
|
||||
virtual Id onTemplateRecordParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy,
|
||||
const NameHierarchy& templateRecordNameHierarchy);
|
||||
virtual Id onTemplateRecordSpecializationParsed(
|
||||
const ParseLocation& location, const NameHierarchy& specializedRecordNameHierarchy,
|
||||
const RecordType specializedRecordType, const NameHierarchy& specializedFromNameHierarchy);
|
||||
const ParseLocation& location, const NameHierarchy& defaultArgumentTypeNameHierarchy,
|
||||
const NameHierarchy& templateParameterNameHierarchy);
|
||||
virtual Id onTemplateParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy);
|
||||
virtual Id onTemplateSpecializationParsed(
|
||||
const ParseLocation& location, const NameHierarchy& specializedNameHierarchy,
|
||||
const NameHierarchy& specializedFromNameHierarchy);
|
||||
virtual Id onTemplateMemberFunctionSpecializationParsed(
|
||||
const ParseLocation& location, const ParseFunction& instantiatedFunction, const ParseFunction& specializedFunction);
|
||||
const ParseLocation& location, const NameHierarchy& instantiatedFunction, const NameHierarchy& specializedFunction);
|
||||
|
||||
virtual Id onTemplateFunctionParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy, const ParseFunction function);
|
||||
virtual Id onTemplateFunctionSpecializationParsed(
|
||||
const ParseLocation& location, const ParseFunction specializedFunction, const ParseFunction templateFunction);
|
||||
const ParseLocation& location, const NameHierarchy specializedFunction, const NameHierarchy templateFunction);
|
||||
|
||||
virtual Id onFileParsed(const FileInfo& fileInfo);
|
||||
virtual Id onFileIncludeParsed(
|
||||
@@ -176,7 +157,6 @@ public:
|
||||
|
||||
private:
|
||||
Id addNodeHierarchy(Node::NodeType nodeType, NameHierarchy nameHierarchy, bool defined);
|
||||
Id addNodeHierarchy(Node::NodeType type, const ParseFunction& function, bool defined);
|
||||
Id addSourceLocation(Id elementNodeId, const ParseLocation &location, bool isScope = false);
|
||||
|
||||
Id addEdge(Id sourceNodeId, Id targetNodeId, Edge::EdgeType type);
|
||||
|
||||
@@ -129,12 +129,12 @@ bool Node::isType(NodeTypeMask mask) const
|
||||
|
||||
std::string Node::getName() const
|
||||
{
|
||||
return m_nameHierarchy.getName();
|
||||
return m_nameHierarchy.getRawName();
|
||||
}
|
||||
|
||||
std::string Node::getFullName() const
|
||||
{
|
||||
return m_nameHierarchy.getFullName();
|
||||
return m_nameHierarchy.getQualifiedName();
|
||||
}
|
||||
|
||||
NameHierarchy Node::getNameHierarchy() const
|
||||
|
||||
@@ -1,12 +1,61 @@
|
||||
#include "data/name/NameElement.h"
|
||||
|
||||
NameElement::NameElement(const std::string& name)
|
||||
: m_name(name)
|
||||
, m_signature("")
|
||||
#include "utility/logging/logging.h"
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
std::string NameElement::Signature::serialize(Signature signature)
|
||||
{
|
||||
return signature.m_prefix + "\r" + signature.m_postfix;
|
||||
}
|
||||
|
||||
NameElement::Signature NameElement::Signature::deserialize(const std::string& serialized)
|
||||
{
|
||||
std::vector<std::string> serializedElements = utility::splitToVector(serialized, "\r");
|
||||
if (serializedElements.size() != 2)
|
||||
{
|
||||
LOG_ERROR("unable to deserialize name signature: " + serialized); // todo: obfuscate serialized!
|
||||
}
|
||||
return Signature(serializedElements[0], serializedElements[1]);
|
||||
}
|
||||
|
||||
NameElement::Signature::Signature()
|
||||
{
|
||||
}
|
||||
|
||||
NameElement::NameElement(const std::string& name, const std::string& signature)
|
||||
NameElement::Signature::Signature(std::string prefix, std::string postfix)
|
||||
: m_prefix(prefix)
|
||||
, m_postfix(postfix)
|
||||
{
|
||||
}
|
||||
|
||||
std::string NameElement::Signature::qualifyName(const std::string& name) const
|
||||
{
|
||||
if (!isValid())
|
||||
{
|
||||
return name;
|
||||
}
|
||||
|
||||
std::string qualifiedName = m_prefix;
|
||||
if (name.size() > 0)
|
||||
{
|
||||
qualifiedName += " " + name;
|
||||
}
|
||||
qualifiedName += m_postfix;
|
||||
|
||||
return qualifiedName;
|
||||
}
|
||||
|
||||
bool NameElement::Signature::isValid() const
|
||||
{
|
||||
return ((m_prefix + m_postfix).size() > 0);
|
||||
}
|
||||
|
||||
NameElement::NameElement(const std::string& name)
|
||||
: m_name(name)
|
||||
{
|
||||
}
|
||||
|
||||
NameElement::NameElement(const std::string& name, const Signature& signature)
|
||||
: m_name(name)
|
||||
, m_signature(signature)
|
||||
{
|
||||
@@ -16,12 +65,22 @@ NameElement::~NameElement()
|
||||
{
|
||||
}
|
||||
|
||||
std::string NameElement::getFullName() const
|
||||
std::string NameElement::getName() const
|
||||
{
|
||||
return m_name;
|
||||
}
|
||||
|
||||
std::string NameElement::getFullSignature() const
|
||||
std::string NameElement::getNameWithSignature() const
|
||||
{
|
||||
return m_signature.qualifyName(m_name);
|
||||
}
|
||||
|
||||
bool NameElement::hasSignature() const
|
||||
{
|
||||
return m_signature.isValid();
|
||||
}
|
||||
|
||||
NameElement::Signature NameElement::getSignature()
|
||||
{
|
||||
return m_signature;
|
||||
}
|
||||
|
||||
@@ -1,21 +1,43 @@
|
||||
#ifndef NAME_ELEMENT_H
|
||||
#define NAME_ELEMENT_H
|
||||
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
class DataType;
|
||||
|
||||
class NameElement
|
||||
{
|
||||
public:
|
||||
class Signature
|
||||
{
|
||||
public:
|
||||
static std::string serialize(Signature signature);
|
||||
static Signature deserialize(const std::string& serialized);
|
||||
|
||||
Signature();
|
||||
Signature(std::string prefix, std::string postfix);
|
||||
std::string qualifyName(const std::string& name) const;
|
||||
bool isValid() const;
|
||||
|
||||
private:
|
||||
std::string m_prefix;
|
||||
std::string m_postfix;
|
||||
};
|
||||
|
||||
NameElement(const std::string& name);
|
||||
NameElement(const std::string& name, const std::string& signature);
|
||||
NameElement(const std::string& name, const Signature& signature);
|
||||
~NameElement();
|
||||
|
||||
std::string getFullName() const;
|
||||
std::string getFullSignature() const;
|
||||
std::string getName() const;
|
||||
std::string getNameWithSignature() const;
|
||||
bool hasSignature() const;
|
||||
Signature getSignature();
|
||||
|
||||
private:
|
||||
std::string m_name;
|
||||
std::string m_signature;
|
||||
Signature m_signature;
|
||||
};
|
||||
|
||||
#endif // NAME_ELEMENT_H
|
||||
|
||||
@@ -8,10 +8,12 @@ std::string NameHierarchy::serialize(NameHierarchy nameHierarchy)
|
||||
std::string serializedName = "";
|
||||
for (size_t i = 0; i < nameHierarchy.size(); i++)
|
||||
{
|
||||
serializedName += nameHierarchy[i]->getFullName() + "\t";
|
||||
serializedName += nameHierarchy[i]->getFullSignature();
|
||||
if (i + 1 < nameHierarchy.size())
|
||||
if (i > 0)
|
||||
{
|
||||
serializedName += "\n";
|
||||
}
|
||||
serializedName += nameHierarchy[i]->getName() + "\t";
|
||||
serializedName += NameElement::Signature::serialize(nameHierarchy[i]->getSignature());
|
||||
}
|
||||
return serializedName;
|
||||
}
|
||||
@@ -29,7 +31,7 @@ NameHierarchy NameHierarchy::deserialize(const std::string& serializedName)
|
||||
LOG_ERROR("unable to deserialize name hierarchy: " + serializedName); // todo: obfuscate serializedName!
|
||||
return NameHierarchy();
|
||||
}
|
||||
nameHierarchy.push(std::make_shared<NameElement>(nameParts[0], nameParts[1]));
|
||||
nameHierarchy.push(std::make_shared<NameElement>(nameParts[0], NameElement::Signature::deserialize(nameParts[1])));
|
||||
}
|
||||
|
||||
return nameHierarchy;
|
||||
@@ -77,26 +79,44 @@ size_t NameHierarchy::size() const
|
||||
return m_elements.size();
|
||||
}
|
||||
|
||||
std::string NameHierarchy::getFullName() const
|
||||
std::string NameHierarchy::getQualifiedName() const
|
||||
{
|
||||
std::string name;
|
||||
for (size_t i = 0; i < m_elements.size(); i++)
|
||||
{
|
||||
name += m_elements[i]->getFullName();
|
||||
if (i + 1 < m_elements.size())
|
||||
if (i > 0)
|
||||
{
|
||||
name += "::";
|
||||
}
|
||||
name += m_elements[i]->getName();
|
||||
}
|
||||
return name;
|
||||
}
|
||||
|
||||
std::string NameHierarchy::getName() const
|
||||
std::string NameHierarchy::getQualifiedNameWithSignature() const
|
||||
{
|
||||
std::string name = getQualifiedName();
|
||||
if (m_elements.size())
|
||||
{
|
||||
name = m_elements.back()->getSignature().qualifyName(name);
|
||||
}
|
||||
return name;
|
||||
}
|
||||
|
||||
std::string NameHierarchy::getRawName() const
|
||||
{
|
||||
if (m_elements.size())
|
||||
{
|
||||
return m_elements.back()->getFullName();
|
||||
return m_elements.back()->getName();
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
std::string NameHierarchy::getRawNameWithSignature() const
|
||||
{
|
||||
if (m_elements.size())
|
||||
{
|
||||
return m_elements.back()->getNameWithSignature();
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
@@ -23,8 +23,10 @@ public:
|
||||
std::shared_ptr<NameElement> operator[](size_t pos) const;
|
||||
size_t size() const;
|
||||
|
||||
std::string getFullName() const;
|
||||
std::string getName() const;
|
||||
std::string getQualifiedName() const;
|
||||
std::string getQualifiedNameWithSignature() const;
|
||||
std::string getRawName() const;
|
||||
std::string getRawNameWithSignature() const;
|
||||
|
||||
private:
|
||||
std::vector<std::shared_ptr<NameElement>> m_elements;
|
||||
|
||||
@@ -19,5 +19,5 @@ ParseFunction::ParseFunction(
|
||||
|
||||
std::string ParseFunction::getFullName() const
|
||||
{
|
||||
return nameHierarchy.getFullName();
|
||||
return nameHierarchy.getQualifiedNameWithSignature();
|
||||
}
|
||||
|
||||
@@ -11,5 +11,5 @@ ParseVariable::ParseVariable(const ParseTypeUsage& type, const NameHierarchy& na
|
||||
|
||||
std::string ParseVariable::getFullName() const
|
||||
{
|
||||
return nameHierarchy.getFullName();
|
||||
return nameHierarchy.getQualifiedNameWithSignature();
|
||||
}
|
||||
|
||||
@@ -107,9 +107,10 @@ std::string ParserClient::parameterStr(const std::vector<ParseTypeUsage> paramet
|
||||
|
||||
std::string ParserClient::functionStr(const ParseFunction& function)
|
||||
{
|
||||
std::string str =
|
||||
/*std::string str =
|
||||
function.returnType.dataType->getFullTypeName() + " " + function.getFullName() + parameterStr(function.parameters);
|
||||
return addConstPrefix(addStaticPrefix(str, function.isStatic), function.isConst, false);
|
||||
return addConstPrefix(addStaticPrefix(str, function.isStatic), function.isConst, false);*/
|
||||
return function.nameHierarchy.getQualifiedNameWithSignature();
|
||||
}
|
||||
|
||||
ParserClient::ParserClient()
|
||||
|
||||
@@ -58,35 +58,30 @@ public:
|
||||
virtual void startParsing() = 0;
|
||||
virtual void finishParsing() = 0;
|
||||
|
||||
virtual void prepareParsingFile(const FilePath& filePath) = 0;
|
||||
virtual void startParsingFile(const FilePath& filePath) = 0;
|
||||
virtual void finishParsingFile(const FilePath& filePath) = 0;
|
||||
|
||||
virtual void onError(const ParseLocation& location, const std::string& message) = 0;
|
||||
virtual size_t getErrorCount() const = 0;
|
||||
|
||||
virtual Id onTypedefParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy,
|
||||
const ParseTypeUsage& underlyingType, AccessType access) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& typedefName, AccessType access) = 0;
|
||||
virtual Id onClassParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation) = 0;
|
||||
virtual Id onStructParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation) = 0;
|
||||
|
||||
virtual Id onGlobalVariableParsed(const ParseLocation& location, const ParseVariable& variable) = 0;
|
||||
virtual Id onFieldParsed(const ParseLocation& location, const ParseVariable& variable, AccessType access) = 0;
|
||||
|
||||
virtual Id onGlobalVariableParsed(const ParseLocation& location, const NameHierarchy& variable) = 0;
|
||||
virtual Id onFieldParsed(const ParseLocation& location, const NameHierarchy& field, AccessType access) = 0;
|
||||
virtual Id onFunctionParsed(
|
||||
const ParseLocation& location, const ParseFunction& function, const ParseLocation& scopeLocation) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& function, const ParseLocation& scopeLocation) = 0;
|
||||
virtual Id onMethodParsed(
|
||||
const ParseLocation& location, const ParseFunction& method, AccessType access, AbstractionType abstraction,
|
||||
const ParseLocation& location, const NameHierarchy& method, AccessType access, AbstractionType abstraction,
|
||||
const ParseLocation& scopeLocation) = 0;
|
||||
|
||||
virtual Id onNamespaceParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy,
|
||||
const ParseLocation& scopeLocation) = 0;
|
||||
|
||||
virtual Id onEnumParsed(
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy, AccessType access,
|
||||
const ParseLocation& scopeLocation) = 0;
|
||||
@@ -96,48 +91,30 @@ public:
|
||||
const ParseLocation& location, const NameHierarchy& nameHierarchy,
|
||||
const NameHierarchy& baseNameHierarchy, AccessType access) = 0;
|
||||
virtual Id onMethodOverrideParsed(
|
||||
const ParseLocation& location, const ParseFunction& base, const ParseFunction& overrider) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& overridden, const NameHierarchy& overrider) = 0;
|
||||
virtual Id onCallParsed(
|
||||
const ParseLocation& location, const ParseFunction& caller, const ParseFunction& callee) = 0;
|
||||
virtual Id onCallParsed(
|
||||
const ParseLocation& location, const ParseVariable& caller, const ParseFunction& callee) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& caller, const NameHierarchy& callee) = 0;
|
||||
virtual Id onFieldUsageParsed(
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
virtual Id onFieldUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
virtual Id onGlobalVariableUsageParsed(
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
virtual Id onGlobalVariableUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
virtual Id onEnumConstantUsageParsed(
|
||||
const ParseLocation& location, const ParseFunction& user, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
virtual Id onEnumConstantUsageParsed(
|
||||
const ParseLocation& location, const ParseVariable& user, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
virtual Id onTypeUsageParsed(const ParseTypeUsage& type, const ParseFunction& function) = 0;
|
||||
virtual Id onTypeUsageParsed(const ParseTypeUsage& type, const ParseVariable& variable) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& userNameHierarchy, const NameHierarchy& usedNameHierarchy) = 0;
|
||||
virtual Id onTypeUsageParsed(const ParseLocation& location, const NameHierarchy& user, const NameHierarchy& used) = 0;
|
||||
|
||||
virtual Id onTemplateArgumentTypeOfTemplateRecordParsed(
|
||||
virtual Id onTemplateArgumentTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& argumentTypeNameHierarchy,
|
||||
const NameHierarchy& templateNameHierarchy) = 0;
|
||||
virtual Id onTemplateArgumentTypeOfTemplateFunctionParsed(
|
||||
const ParseLocation& location, const NameHierarchy& argumentTypeNameHierarchy,
|
||||
const ParseFunction& templateFunction) = 0;
|
||||
virtual Id onTemplateDefaultArgumentTypeParsed(
|
||||
const ParseTypeUsage& type, const NameHierarchy& templateArgumentTypeNameHierarchy) = 0;
|
||||
virtual Id onTemplateRecordParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy,
|
||||
const NameHierarchy& templateRecordNameHierarchy) = 0;
|
||||
virtual Id onTemplateRecordSpecializationParsed(
|
||||
const ParseLocation& location, const NameHierarchy& specializedRecordNameHierarchy,
|
||||
const RecordType specializedRecordType, const NameHierarchy& specializedFromNameHierarchy) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& defaultArgumentTypeNameHierarchy,
|
||||
const NameHierarchy& templateArgumentTypeNameHierarchy) = 0;
|
||||
virtual Id onTemplateParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy) = 0;
|
||||
virtual Id onTemplateSpecializationParsed(
|
||||
const ParseLocation& location, const NameHierarchy& specializedNameHierarchy,
|
||||
const NameHierarchy& specializedFromNameHierarchy) = 0;
|
||||
virtual Id onTemplateMemberFunctionSpecializationParsed(
|
||||
const ParseLocation& location, const ParseFunction& instantiatedFunction, const ParseFunction& specializedFunction) = 0;
|
||||
|
||||
virtual Id onTemplateFunctionParameterTypeParsed(
|
||||
const ParseLocation& location, const NameHierarchy& templateParameterTypeNameHierarchy,
|
||||
const ParseFunction function) = 0;
|
||||
virtual Id onTemplateFunctionSpecializationParsed(
|
||||
const ParseLocation& location, const ParseFunction specializedFunction, const ParseFunction templateFunction) = 0;
|
||||
const ParseLocation& location, const NameHierarchy& instantiatedFunction, const NameHierarchy& specializedFunction) = 0;
|
||||
|
||||
virtual Id onFileParsed(const FileInfo& fileInfo) = 0;
|
||||
virtual Id onFileIncludeParsed(
|
||||
|
||||
@@ -68,7 +68,7 @@ SearchNode* SearchIndex::addNode(NameHierarchy nameHierarchy)
|
||||
std::deque<Id> nameIds;
|
||||
for (size_t i = 0; i < nameHierarchy.size(); i++)
|
||||
{
|
||||
nameIds.push_back(m_dictionary.getWordId(nameHierarchy[i]->getFullName()));
|
||||
nameIds.push_back(m_dictionary.getWordId(nameHierarchy[i]->getName()));
|
||||
}
|
||||
|
||||
if (nameIds.size())
|
||||
|
||||
@@ -87,7 +87,7 @@ bool SearchMatch::isValid() const
|
||||
|
||||
void SearchMatch::print(std::ostream& ostream) const
|
||||
{
|
||||
ostream << weight << '\t' << nameHierarchy.getFullName() << std::endl << '\t';
|
||||
ostream << weight << '\t' << nameHierarchy.getQualifiedName() << std::endl << '\t';
|
||||
size_t i = 0;
|
||||
for (size_t index : indices)
|
||||
{
|
||||
@@ -104,7 +104,7 @@ void SearchMatch::print(std::ostream& ostream) const
|
||||
|
||||
std::string SearchMatch::getFullName() const
|
||||
{
|
||||
return nameHierarchy.getFullName();
|
||||
return nameHierarchy.getQualifiedName();
|
||||
}
|
||||
|
||||
std::string SearchMatch::getNodeTypeAsString() const
|
||||
|
||||
@@ -20,7 +20,7 @@ std::string NamedDataType::getFullTypeName() const
|
||||
|
||||
std::string NamedDataType::getRawTypeName() const
|
||||
{
|
||||
return m_nameHierarchy.getFullName();
|
||||
return m_nameHierarchy.getQualifiedNameWithSignature();
|
||||
}
|
||||
|
||||
const NameHierarchy& NamedDataType::getTypeNameHierarchy() const
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
#ifndef SCOPED_SWITCHER_H
|
||||
#define SCOPED_SWITCHER_H
|
||||
|
||||
template <typename T>
|
||||
class ScopedSwitcher
|
||||
{
|
||||
public:
|
||||
ScopedSwitcher(T &var)
|
||||
: m_var(&var)
|
||||
, m_origVal(var)
|
||||
{}
|
||||
|
||||
ScopedSwitcher(T &var, T tempVal)
|
||||
: m_var(&var)
|
||||
, m_origVal(var)
|
||||
{
|
||||
var = tempVal;
|
||||
}
|
||||
|
||||
~ScopedSwitcher()
|
||||
{
|
||||
*m_var = m_origVal;
|
||||
}
|
||||
|
||||
private:
|
||||
T *m_var;
|
||||
T m_origVal;
|
||||
};
|
||||
|
||||
#endif // SCOPED_SWITCHER_H
|
||||
@@ -32,7 +32,7 @@ public:
|
||||
|
||||
std::string getFullName() const
|
||||
{
|
||||
return Edge::getTypeString(type) + ":" + fromNameHierarchy.getFullName() + "->" + toNameHierarchy.getFullName();
|
||||
return Edge::getTypeString(type) + ":" + fromNameHierarchy.getQualifiedNameWithSignature() + "->" + toNameHierarchy.getQualifiedNameWithSignature();
|
||||
}
|
||||
|
||||
virtual void print(std::ostream& os) const
|
||||
|
||||
@@ -91,7 +91,7 @@ std::deque<Id> Dictionary::getWordIdsConst(const NameHierarchy& nameHierarchy) c
|
||||
|
||||
for (size_t i = 0; i < nameHierarchy.size(); i++)
|
||||
{
|
||||
ids.push_back(getWordIdConst(nameHierarchy[i]->getFullName()));
|
||||
ids.push_back(getWordIdConst(nameHierarchy[i]->getName()));
|
||||
}
|
||||
|
||||
return ids;
|
||||
|
||||
@@ -15,10 +15,6 @@ add_files(
|
||||
data/parser/cxx/ASTAction.h
|
||||
data/parser/cxx/ASTActionFactory.cpp
|
||||
data/parser/cxx/ASTActionFactory.h
|
||||
data/parser/cxx/ASTBodyVisitor.cpp
|
||||
data/parser/cxx/ASTBodyVisitor.h
|
||||
data/parser/cxx/ASTBodyVisitorClient.cpp
|
||||
data/parser/cxx/ASTBodyVisitorClient.h
|
||||
data/parser/cxx/ASTConsumer.cpp
|
||||
data/parser/cxx/ASTConsumer.h
|
||||
data/parser/cxx/ASTVisitor.cpp
|
||||
|
||||
@@ -18,7 +18,7 @@ ASTAction::~ASTAction()
|
||||
|
||||
std::unique_ptr<clang::ASTConsumer> ASTAction::CreateASTConsumer(clang::CompilerInstance& compiler, llvm::StringRef inFile)
|
||||
{
|
||||
return std::unique_ptr<clang::ASTConsumer>(new ASTConsumer(&compiler.getASTContext(), m_client, m_fileRegister));
|
||||
return std::unique_ptr<clang::ASTConsumer>(new ASTConsumer(&compiler.getASTContext(), &compiler.getPreprocessor(), m_client, m_fileRegister));
|
||||
}
|
||||
|
||||
bool ASTAction::BeginSourceFileAction(clang::CompilerInstance& compiler, llvm::StringRef filePath)
|
||||
|
||||
@@ -1,177 +0,0 @@
|
||||
#include "data/parser/cxx/ASTBodyVisitor.h"
|
||||
|
||||
#include "clang/AST/DeclCXX.h"
|
||||
|
||||
ASTBodyVisitor::ASTBodyVisitor(ASTBodyVisitorClient* client, clang::FunctionDecl* functionDecl)
|
||||
: m_client(client)
|
||||
, m_functionDecl(functionDecl)
|
||||
, m_varDecl(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
ASTBodyVisitor::ASTBodyVisitor(ASTBodyVisitorClient* client, clang::DeclaratorDecl* varDecl)
|
||||
: m_client(client)
|
||||
, m_functionDecl(nullptr)
|
||||
, m_varDecl(varDecl)
|
||||
{
|
||||
}
|
||||
|
||||
ASTBodyVisitor::~ASTBodyVisitor()
|
||||
{
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitStmt(clang::Stmt* stmt)
|
||||
{
|
||||
VisitChildren(stmt);
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitChildren(clang::Stmt* stmt)
|
||||
{
|
||||
for (clang::Stmt::child_iterator it = stmt->child_begin(); it != stmt->child_end(); it++)
|
||||
{
|
||||
if (*it)
|
||||
{
|
||||
static_cast<ASTBodyVisitor*>(this)->Visit(*it);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitCallExpr(clang::CallExpr* expr)
|
||||
{
|
||||
if (m_functionDecl)
|
||||
{
|
||||
m_client->VisitCallExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitCallExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
|
||||
VisitStmt(expr);
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitCXXConstructExpr(clang::CXXConstructExpr* expr)
|
||||
{
|
||||
if (m_functionDecl)
|
||||
{
|
||||
m_client->VisitCXXConstructExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitCXXConstructExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
|
||||
VisitStmt(expr);
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitExplicitCastExpr(clang::ExplicitCastExpr* expr)
|
||||
{
|
||||
if (m_functionDecl)
|
||||
{
|
||||
m_client->VisitExplicitCastExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitExplicitCastExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
|
||||
VisitStmt(expr);
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitCXXTemporaryObjectExpr(clang::CXXTemporaryObjectExpr* expr)
|
||||
{
|
||||
if (m_functionDecl)
|
||||
{
|
||||
m_client->VisitCXXTemporaryObjectExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitCXXTemporaryObjectExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
|
||||
VisitStmt(expr);
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitCXXNewExpr(clang::CXXNewExpr* expr)
|
||||
{
|
||||
if (m_functionDecl)
|
||||
{
|
||||
m_client->VisitCXXNewExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitCXXNewExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
|
||||
VisitStmt(expr);
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitMemberExpr(clang::make_ptr<clang::MemberExpr>::type expr)
|
||||
{
|
||||
if (expr->getMemberDecl()->getKind() == clang::Decl::Kind::Field)
|
||||
{
|
||||
if(m_functionDecl)
|
||||
{
|
||||
m_client->VisitMemberExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitMemberExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
}
|
||||
VisitStmt(expr);
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitDeclRefExpr(clang::DeclRefExpr* expr)
|
||||
{
|
||||
if (m_functionDecl)
|
||||
{
|
||||
m_client->VisitDeclRefExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitDeclRefExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
|
||||
if (expr->getDecl()->getKind() == clang::Decl::Var && expr->getDecl()->isDefinedOutsideFunctionOrMethod())
|
||||
{
|
||||
if (m_functionDecl)
|
||||
{
|
||||
m_client->VisitGlobalVariableExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitGlobalVariableExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
}
|
||||
else if (expr->getDecl()->getKind() == clang::Decl::EnumConstant)
|
||||
{
|
||||
if (m_functionDecl)
|
||||
{
|
||||
m_client->VisitEnumExprInDeclBody(m_functionDecl, expr);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_client->VisitEnumExprInDeclBody(m_varDecl, expr);
|
||||
}
|
||||
}
|
||||
|
||||
VisitStmt(expr);
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitLambdaExpr(clang::LambdaExpr* expr)
|
||||
{
|
||||
// Don't visit the lambda's children. The ASTVisitor creates a new ASTBodyVisitor for these.
|
||||
}
|
||||
|
||||
void ASTBodyVisitor::VisitDeclStmt(clang::DeclStmt* stmt)
|
||||
{
|
||||
for (clang::Decl* decl : stmt->decls())
|
||||
{
|
||||
if (clang::isa<clang::VarDecl>(decl))
|
||||
{
|
||||
m_client->VisitVarDeclInDeclBody(m_functionDecl, clang::dyn_cast<clang::VarDecl>(decl));
|
||||
}
|
||||
}
|
||||
VisitStmt(stmt);
|
||||
}
|
||||
@@ -1,32 +0,0 @@
|
||||
#ifndef AST_BODY_VISITOR
|
||||
#define AST_BODY_VISITOR
|
||||
|
||||
#include "clang/AST/StmtVisitor.h"
|
||||
#include "data/parser/cxx/ASTBodyVisitorClient.h"
|
||||
|
||||
class ASTBodyVisitor: public clang::StmtVisitor<ASTBodyVisitor>
|
||||
{
|
||||
public:
|
||||
ASTBodyVisitor(ASTBodyVisitorClient* client, clang::FunctionDecl* functionDecl);
|
||||
ASTBodyVisitor(ASTBodyVisitorClient* client, clang::DeclaratorDecl* varDecl);
|
||||
virtual ~ASTBodyVisitor();
|
||||
|
||||
void VisitStmt(clang::Stmt* stmt);
|
||||
void VisitChildren(clang::Stmt* stmt);
|
||||
void VisitCallExpr(clang::CallExpr* expr);
|
||||
void VisitCXXConstructExpr(clang::CXXConstructExpr* expr);
|
||||
void VisitExplicitCastExpr(clang::ExplicitCastExpr* expr);
|
||||
void VisitCXXTemporaryObjectExpr(clang::CXXTemporaryObjectExpr* expr);
|
||||
void VisitCXXNewExpr(clang::CXXNewExpr* expr);
|
||||
void VisitMemberExpr(clang::make_ptr<clang::MemberExpr>::type expr);
|
||||
void VisitDeclRefExpr(clang::make_ptr<clang::DeclRefExpr>::type expr);
|
||||
void VisitLambdaExpr(clang::LambdaExpr* expr);
|
||||
void VisitDeclStmt(clang::DeclStmt* stmt);
|
||||
|
||||
private:
|
||||
ASTBodyVisitorClient* m_client;
|
||||
clang::FunctionDecl* m_functionDecl;
|
||||
clang::DeclaratorDecl* m_varDecl;
|
||||
};
|
||||
|
||||
#endif // AST_BODY_VISITOR
|
||||
@@ -1,9 +0,0 @@
|
||||
#include "data/parser/cxx/ASTBodyVisitorClient.h"
|
||||
|
||||
ASTBodyVisitorClient::ASTBodyVisitorClient()
|
||||
{
|
||||
}
|
||||
|
||||
ASTBodyVisitorClient::~ASTBodyVisitorClient()
|
||||
{
|
||||
}
|
||||
@@ -1,35 +0,0 @@
|
||||
#ifndef AST_BODY_VISITOR_CLIENT_H
|
||||
#define AST_BODY_VISITOR_CLIENT_H
|
||||
|
||||
#include "clang/AST/Decl.h"
|
||||
#include "clang/AST/Expr.h"
|
||||
#include "clang/AST/ExprCXX.h"
|
||||
|
||||
class ASTBodyVisitorClient
|
||||
{
|
||||
public:
|
||||
ASTBodyVisitorClient();
|
||||
virtual ~ASTBodyVisitorClient();
|
||||
|
||||
virtual void VisitCallExprInDeclBody(clang::FunctionDecl* decl, clang::CallExpr* expr) = 0;
|
||||
virtual void VisitCallExprInDeclBody(clang::DeclaratorDecl* decl, clang::CallExpr* expr) = 0;
|
||||
virtual void VisitDeclRefExprInDeclBody(clang::FunctionDecl* decl, clang::DeclRefExpr* expr) = 0;
|
||||
virtual void VisitDeclRefExprInDeclBody(clang::DeclaratorDecl* decl, clang::DeclRefExpr* expr) = 0;
|
||||
virtual void VisitCXXConstructExprInDeclBody(clang::FunctionDecl* decl, clang::CXXConstructExpr* expr) = 0;
|
||||
virtual void VisitCXXConstructExprInDeclBody(clang::DeclaratorDecl* decl, clang::CXXConstructExpr* expr) = 0;
|
||||
virtual void VisitExplicitCastExprInDeclBody(clang::FunctionDecl* decl, clang::ExplicitCastExpr* expr) = 0;
|
||||
virtual void VisitExplicitCastExprInDeclBody(clang::DeclaratorDecl* decl, clang::ExplicitCastExpr* expr) = 0;
|
||||
virtual void VisitCXXTemporaryObjectExprInDeclBody(clang::FunctionDecl* decl, clang::CXXTemporaryObjectExpr* expr) = 0;
|
||||
virtual void VisitCXXTemporaryObjectExprInDeclBody(clang::DeclaratorDecl* decl, clang::CXXTemporaryObjectExpr* expr) = 0;
|
||||
virtual void VisitCXXNewExprInDeclBody(clang::FunctionDecl* decl, clang::CXXNewExpr* expr) = 0;
|
||||
virtual void VisitCXXNewExprInDeclBody(clang::DeclaratorDecl* decl, clang::CXXNewExpr* expr) = 0;
|
||||
virtual void VisitMemberExprInDeclBody(clang::FunctionDecl* decl, clang::MemberExpr* expr) = 0;
|
||||
virtual void VisitMemberExprInDeclBody(clang::DeclaratorDecl* decl, clang::MemberExpr* expr) = 0;
|
||||
virtual void VisitGlobalVariableExprInDeclBody(clang::FunctionDecl* decl, clang::DeclRefExpr* expr) = 0;
|
||||
virtual void VisitGlobalVariableExprInDeclBody(clang::DeclaratorDecl* decl, clang::DeclRefExpr* expr) = 0;
|
||||
virtual void VisitEnumExprInDeclBody(clang::FunctionDecl* decl, clang::DeclRefExpr* expr) = 0;
|
||||
virtual void VisitEnumExprInDeclBody(clang::DeclaratorDecl* decl, clang::DeclRefExpr* expr) = 0;
|
||||
virtual void VisitVarDeclInDeclBody(clang::FunctionDecl* decl, clang::VarDecl* varDecl) = 0;
|
||||
};
|
||||
|
||||
#endif // AST_BODY_VISITOR_CLIENT_H
|
||||
@@ -2,8 +2,8 @@
|
||||
|
||||
#include "data/parser/ParserClient.h"
|
||||
|
||||
ASTConsumer::ASTConsumer(clang::ASTContext* context, ParserClient* client, FileRegister* fileRegister)
|
||||
: m_visitor(context, client, fileRegister)
|
||||
ASTConsumer::ASTConsumer(clang::ASTContext* context, clang::Preprocessor* preprocessor, ParserClient* client, FileRegister* fileRegister)
|
||||
: m_visitor(context, preprocessor, client, fileRegister)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -13,5 +13,5 @@ ASTConsumer::~ASTConsumer()
|
||||
|
||||
void ASTConsumer::HandleTranslationUnit(clang::ASTContext& context)
|
||||
{
|
||||
m_visitor.TraverseDecl(context.getTranslationUnitDecl());
|
||||
m_visitor.indexDecl(context.getTranslationUnitDecl());
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ class ASTConsumer
|
||||
: public clang::ASTConsumer
|
||||
{
|
||||
public:
|
||||
explicit ASTConsumer(clang::ASTContext* context, ParserClient* client, FileRegister* fileRegister);
|
||||
explicit ASTConsumer(clang::ASTContext* context, clang::Preprocessor* preprocessor, ParserClient* client, FileRegister* fileRegister);
|
||||
virtual ~ASTConsumer();
|
||||
|
||||
virtual void HandleTranslationUnit(clang::ASTContext& context);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -4,108 +4,320 @@
|
||||
#include <unordered_map>
|
||||
|
||||
#include "clang/AST/ASTContext.h"
|
||||
#include "clang/AST/RecursiveASTVisitor.h"
|
||||
#include <clang/AST/RecursiveASTVisitor.h>
|
||||
#include <clang/Basic/SourceLocation.h>
|
||||
#include <clang/Basic/SourceManager.h>
|
||||
|
||||
#include "data/parser/ParserClient.h"
|
||||
#include "utility/file/FileRegister.h"
|
||||
|
||||
#include "data/parser/cxx/ASTBodyVisitorClient.h"
|
||||
#include "data/parser/ParserClient.h"
|
||||
|
||||
class ASTVisitor
|
||||
: public clang::RecursiveASTVisitor<ASTVisitor>
|
||||
, public ASTBodyVisitorClient
|
||||
|
||||
#include "data/parser/cxx/name_resolver/CxxTypeNameResolver.h"
|
||||
#include "data/parser/cxx/utilityCxx.h"
|
||||
|
||||
class ASTVisitor: clang::RecursiveASTVisitor<ASTVisitor>
|
||||
{
|
||||
public:
|
||||
ASTVisitor(clang::ASTContext* context, ParserClient* client, FileRegister* fileRegister);
|
||||
virtual ~ASTVisitor();
|
||||
|
||||
class TypeNameCache
|
||||
{
|
||||
public:
|
||||
NameHierarchy getName(const clang::Type* type)
|
||||
{
|
||||
if (type)
|
||||
{
|
||||
NameHierarchy nameHierarchy;
|
||||
std::unordered_map<const clang::Type*, NameHierarchy>::const_iterator it = m_typeNameMap.find(type);
|
||||
if (it != m_typeNameMap.end())
|
||||
{
|
||||
nameHierarchy = it->second;
|
||||
}
|
||||
else
|
||||
{
|
||||
CxxTypeNameResolver resolver;
|
||||
nameHierarchy = resolver.getTypeNameHierarchy(type);
|
||||
m_typeNameMap[type] = nameHierarchy;
|
||||
}
|
||||
return nameHierarchy;
|
||||
}
|
||||
return NameHierarchy("global");
|
||||
}
|
||||
|
||||
private:
|
||||
std::unordered_map<const clang::Type*, NameHierarchy> m_typeNameMap;
|
||||
};
|
||||
|
||||
class DeclNameCache
|
||||
{
|
||||
public:
|
||||
NameHierarchy getName(const clang::NamedDecl* decl)
|
||||
{
|
||||
if (decl)
|
||||
{
|
||||
NameHierarchy nameHierarchy;
|
||||
std::unordered_map<const clang::Decl*, NameHierarchy>::const_iterator it = m_declNameCache.find(decl);
|
||||
if (it != m_declNameCache.end())
|
||||
{
|
||||
nameHierarchy = it->second;
|
||||
}
|
||||
else
|
||||
{
|
||||
nameHierarchy = utility::getDeclNameHierarchy(decl);
|
||||
m_declNameCache[decl] = nameHierarchy;
|
||||
}
|
||||
return nameHierarchy;
|
||||
}
|
||||
return NameHierarchy("global");
|
||||
}
|
||||
|
||||
private:
|
||||
std::unordered_map<const clang::Decl*, NameHierarchy> m_declNameCache;
|
||||
};
|
||||
|
||||
class ContextNameGenerator
|
||||
{
|
||||
public:
|
||||
virtual ~ContextNameGenerator() {}
|
||||
virtual NameHierarchy getName() const = 0;
|
||||
};
|
||||
|
||||
class ContextDeclNameGenerator: public ContextNameGenerator
|
||||
{
|
||||
public:
|
||||
ContextDeclNameGenerator(const clang::NamedDecl* decl, std::shared_ptr<DeclNameCache> nameCache)
|
||||
: m_decl(decl)
|
||||
, m_nameCache(nameCache)
|
||||
{}
|
||||
|
||||
virtual ~ContextDeclNameGenerator() {}
|
||||
|
||||
virtual NameHierarchy getName() const
|
||||
{
|
||||
return m_nameCache->getName(m_decl);
|
||||
}
|
||||
private:
|
||||
const clang::NamedDecl* m_decl;
|
||||
std::shared_ptr<DeclNameCache> m_nameCache;
|
||||
};
|
||||
|
||||
class ContextTypeNameGenerator: public ContextNameGenerator
|
||||
{
|
||||
public:
|
||||
ContextTypeNameGenerator(const clang::Type* type, std::shared_ptr<TypeNameCache> nameCache)
|
||||
: m_type(type)
|
||||
, m_nameCache(nameCache)
|
||||
{}
|
||||
|
||||
virtual ~ContextTypeNameGenerator() {}
|
||||
|
||||
virtual NameHierarchy getName() const
|
||||
{
|
||||
return m_nameCache->getName(m_type);
|
||||
}
|
||||
private:
|
||||
const clang::Type* m_type;
|
||||
std::shared_ptr<TypeNameCache> m_nameCache;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
ASTVisitor(clang::ASTContext* context, clang::Preprocessor* preprocessor, ParserClient* client, FileRegister* fileRegister);
|
||||
|
||||
// Left for debugging purposes. Uncomment to see a colored ast-dump of the parsed file.
|
||||
// virtual bool VisitTranslationUnitDecl(clang::TranslationUnitDecl* decl)
|
||||
// {
|
||||
// decl->dump();
|
||||
// return true;
|
||||
// }
|
||||
virtual bool VisitTranslationUnitDecl(clang::TranslationUnitDecl* decl);
|
||||
|
||||
// RecursiveASTVisitor implementation
|
||||
virtual bool VisitStmt(const clang::Stmt* statement); // avoid visiting
|
||||
|
||||
virtual bool VisitTypedefDecl(clang::TypedefDecl* declaration); // typedefs
|
||||
virtual bool VisitRecordDecl(clang::RecordDecl* declaration);
|
||||
virtual bool VisitVarDecl(clang::VarDecl* declaration); // global variables and static fields
|
||||
virtual bool VisitFieldDecl(clang::FieldDecl* declaration); // fields
|
||||
virtual bool VisitFunctionDecl(clang::FunctionDecl* declaration); // functions
|
||||
virtual bool VisitLambdaExpr(clang::LambdaExpr* expr); // lambdas
|
||||
virtual bool VisitParmVarDecl(clang::ParmVarDecl* declaration);
|
||||
virtual bool VisitCXXMethodDecl(clang::CXXMethodDecl* declaration); // methods
|
||||
virtual bool VisitCXXConstructorDecl(clang::CXXConstructorDecl* declaration); // initialization list
|
||||
virtual bool VisitNamespaceDecl(clang::NamespaceDecl* declaration); // namespaces
|
||||
virtual bool VisitEnumDecl(clang::EnumDecl* declaration); // enums
|
||||
virtual bool VisitEnumConstantDecl(clang::EnumConstantDecl* declaration); // enum fields
|
||||
|
||||
virtual bool VisitTemplateTypeParmDecl(clang::TemplateTypeParmDecl *declaration);
|
||||
virtual bool VisitTemplateTemplateParmDecl(clang::TemplateTemplateParmDecl *declaration);
|
||||
virtual bool VisitClassTemplateDecl(clang::ClassTemplateDecl* declaration);
|
||||
virtual bool VisitClassTemplatePartialSpecializationDecl(clang::ClassTemplatePartialSpecializationDecl* declaration);
|
||||
virtual bool VisitFunctionTemplateDecl(clang::FunctionTemplateDecl *declaration);
|
||||
|
||||
// ASTBodyVisitorClient implementation
|
||||
virtual void VisitCallExprInDeclBody(clang::FunctionDecl* decl, clang::CallExpr* expr); // calls
|
||||
virtual void VisitCallExprInDeclBody(clang::DeclaratorDecl* decl, clang::CallExpr* expr); // calls in initialization of global variables
|
||||
virtual void VisitDeclRefExprInDeclBody(clang::FunctionDecl* decl, clang::DeclRefExpr* expr);
|
||||
virtual void VisitDeclRefExprInDeclBody(clang::DeclaratorDecl* decl, clang::DeclRefExpr* expr);
|
||||
virtual void VisitCXXConstructExprInDeclBody(clang::FunctionDecl* decl, clang::CXXConstructExpr* expr); // constructor calls
|
||||
virtual void VisitCXXConstructExprInDeclBody(clang::DeclaratorDecl* decl, clang::CXXConstructExpr* expr); // constructor calls of global variables
|
||||
virtual void VisitExplicitCastExprInDeclBody(clang::FunctionDecl* decl, clang::ExplicitCastExpr* expr);
|
||||
virtual void VisitExplicitCastExprInDeclBody(clang::DeclaratorDecl* decl, clang::ExplicitCastExpr* expr);
|
||||
virtual void VisitCXXTemporaryObjectExprInDeclBody(clang::FunctionDecl* decl, clang::CXXTemporaryObjectExpr* expr);
|
||||
virtual void VisitCXXTemporaryObjectExprInDeclBody(clang::DeclaratorDecl* decl, clang::CXXTemporaryObjectExpr* expr);
|
||||
virtual void VisitCXXNewExprInDeclBody(clang::FunctionDecl* decl, clang::CXXNewExpr* expr); // type use of new operator
|
||||
virtual void VisitCXXNewExprInDeclBody(clang::DeclaratorDecl* decl, clang::CXXNewExpr* expr); // type use of new operator in global space
|
||||
virtual void VisitMemberExprInDeclBody(clang::FunctionDecl* decl, clang::MemberExpr* expr); // field usages
|
||||
virtual void VisitMemberExprInDeclBody(clang::DeclaratorDecl* decl, clang::MemberExpr* expr); // field usages
|
||||
virtual void VisitGlobalVariableExprInDeclBody(clang::FunctionDecl* decl, clang::DeclRefExpr* expr); // global variable usage
|
||||
virtual void VisitGlobalVariableExprInDeclBody(clang::DeclaratorDecl* decl, clang::DeclRefExpr* expr); // global variable usage
|
||||
virtual void VisitEnumExprInDeclBody(clang::FunctionDecl* decl, clang::DeclRefExpr* expr); // enum field usage
|
||||
virtual void VisitEnumExprInDeclBody(clang::DeclaratorDecl* decl, clang::DeclRefExpr* expr); // enum field usage in global variable
|
||||
virtual void VisitVarDeclInDeclBody(clang::FunctionDecl* decl, clang::VarDecl* varDecl); // type usages
|
||||
void indexDecl(clang::Decl *d) { TraverseDecl(d); }
|
||||
|
||||
private:
|
||||
void processFunctionDecl(clang::FunctionDecl* declaration);
|
||||
void processTemplateArgumentsOfExplicitSpecialization(clang::FunctionDecl* declaration);
|
||||
void processTemplateArgumentsOfExplicitSpecialization(clang::ClassTemplateSpecializationDecl* specializationDecl);
|
||||
void processTemplateArguments(clang::DeclRefExpr* expr);
|
||||
void processTemplateArguments(clang::TypeLoc loc);
|
||||
typedef clang::RecursiveASTVisitor<ASTVisitor> base;
|
||||
friend class clang::RecursiveASTVisitor<ASTVisitor>;
|
||||
|
||||
bool isLocatedInUnparsedProjectFile(const clang::Decl* declaration) const;
|
||||
bool isLocatedInProjectFile(const ParseLocation& location) const;
|
||||
bool isLocatedInProjectFile(const clang::Decl* declaration) const;
|
||||
// XXX: The CF_Read flag is useful mostly for lvalues -- for rvalues, we
|
||||
// don't set the CF_Read flag, but the rvalue is assumed to be read anyway.
|
||||
|
||||
ParserClient::AccessType convertAccessType(clang::AccessSpecifier) const;
|
||||
ParserClient::AbstractionType getAbstractionType(const clang::CXXMethodDecl* methodDecl) const;
|
||||
enum ContextFlags {
|
||||
CF_Called = 0x1, // the value is read only to be called
|
||||
CF_Read = 0x2, // the value is read for any other use
|
||||
CF_AddressTaken = 0x4, // the gl-value's address escapes
|
||||
CF_Assigned = 0x8, // the gl-value is assigned to
|
||||
CF_Modified = 0x10 // the gl-value is updated (i.e. compound assignment)
|
||||
};
|
||||
|
||||
ParseLocation getParseLocation(const clang::SourceRange& sourceRange) const;
|
||||
ParseLocation getParseLocationForTokenAtLocation(const clang::SourceLocation& loc) const;
|
||||
ParseLocation getParseLocationForTokensInRange(const clang::SourceRange& range) const;
|
||||
ParseLocation getParseLocationForNamedDecl(const clang::NamedDecl* decl) const;
|
||||
ParseLocation getParseLocationOfFunctionBody(const clang::FunctionDecl* decl) const;
|
||||
ParseLocation getParseLocationOfRecordBody(clang::RecordDecl* decl) const;
|
||||
enum RefType : int {
|
||||
RT_AddressTaken,
|
||||
RT_Assigned,
|
||||
RT_BaseClass,
|
||||
RT_Called,
|
||||
RT_Declaration,
|
||||
RT_DefinedTest,
|
||||
RT_Definition,
|
||||
RT_Expansion,
|
||||
RT_Included,
|
||||
RT_Initialized,
|
||||
RT_Modified,
|
||||
RT_NamespaceAlias,
|
||||
RT_Other,
|
||||
RT_Qualifier,
|
||||
RT_Read,
|
||||
RT_Reference,
|
||||
RT_TemplateArgument,
|
||||
RT_TemplateDefaultArgument,
|
||||
RT_Undefinition,
|
||||
RT_Using,
|
||||
RT_UsingDirective,
|
||||
RT_Max
|
||||
};
|
||||
|
||||
ParseTypeUsage getParseTypeUsage(const clang::TypeLoc& typeLoc, const clang::QualType& type) const;
|
||||
ParseTypeUsage getParseTypeUsage(const clang::TypeLoc& typeLoc, const std::shared_ptr<DataType> type) const;
|
||||
ParseTypeUsage getParseTypeUsage(const clang::SourceRange& sourceRange, const std::shared_ptr<DataType> type) const;
|
||||
ParseTypeUsage getParseTypeUsageOfReturnType(const clang::FunctionDecl* declaration) const;
|
||||
std::vector<ParseTypeUsage> getParameters(const clang::FunctionDecl* declaration) const;
|
||||
enum SymbolType : int { // we dont need this. decl already knows it!
|
||||
ST_Class,
|
||||
ST_ClassTemplateSpecialization,
|
||||
ST_Constructor,
|
||||
ST_Destructor,
|
||||
ST_Enum,
|
||||
ST_Enumerator,
|
||||
ST_Field,
|
||||
ST_Function,
|
||||
ST_FunctionTemplateSpecialization,
|
||||
ST_GlobalVariable,
|
||||
ST_LocalVariable,
|
||||
ST_Macro,
|
||||
ST_Method,
|
||||
ST_Namespace,
|
||||
ST_Parameter,
|
||||
ST_Path,
|
||||
ST_Struct,
|
||||
ST_Typedef,
|
||||
ST_TemplateParameter,
|
||||
ST_Union,
|
||||
ST_Max
|
||||
};
|
||||
|
||||
ParseVariable getParseVariable(const clang::DeclaratorDecl* declaration);
|
||||
ParseFunction getParseFunction(const clang::FunctionDecl* declaration);
|
||||
ParseFunction getParseFunction(const clang::FunctionTemplateDecl* declaration);
|
||||
struct Location {
|
||||
unsigned int fileID;
|
||||
unsigned int line; // 1-based
|
||||
int column; // 1-based
|
||||
};
|
||||
|
||||
NameHierarchy getDeclNameHierarchy(const clang::Decl* decl);
|
||||
typedef unsigned int Context;
|
||||
|
||||
clang::ASTContext* m_context;
|
||||
clang::Preprocessor* m_preprocessor;
|
||||
ParserClient* m_client;
|
||||
FileRegister* m_fileRegister;
|
||||
std::unordered_map<const clang::Decl*, NameHierarchy> m_nameCache;
|
||||
|
||||
Context m_thisContext;
|
||||
Context m_childContext;
|
||||
RefType m_typeContext;
|
||||
|
||||
// Misc routines
|
||||
bool shouldVisitTemplateInstantiations() const { return true; }
|
||||
bool shouldUseDataRecursionFor(clang::Stmt *s) const;
|
||||
|
||||
// Dispatcher routines
|
||||
bool TraverseStmt(clang::Stmt *stmt);
|
||||
bool TraverseType(clang::QualType t);
|
||||
bool TraverseTypeLoc(clang::TypeLoc tl);
|
||||
bool TraverseDecl(clang::Decl *d);
|
||||
bool TraverseLambdaExpr(clang::LambdaExpr* e);
|
||||
bool TraverseFunctionDecl(clang::FunctionDecl* d);
|
||||
bool TraverseTypedefDecl(clang::TypedefDecl *d);
|
||||
bool TraverseFieldDecl(clang::FieldDecl *d);
|
||||
bool TraverseVarDecl(clang::VarDecl *d);
|
||||
bool TraverseClassTemplateDecl(clang::ClassTemplateDecl* d);
|
||||
bool TraverseTemplateTypeParmDecl(clang::TemplateTypeParmDecl* d);
|
||||
bool TraverseTemplateTemplateParmDecl(clang::TemplateTemplateParmDecl* d);
|
||||
bool TraverseClassTemplatePartialSpecializationDecl(clang::ClassTemplatePartialSpecializationDecl* d);
|
||||
bool TraverseDeclRefExpr(clang::DeclRefExpr* expr);
|
||||
bool TraverseTemplateSpecializationTypeLoc(clang::TemplateSpecializationTypeLoc loc);
|
||||
bool TraverseTemplateArgumentLoc(const clang::TemplateArgumentLoc& loc);
|
||||
|
||||
// Expression context propagation
|
||||
bool TraverseCallExpr(clang::CallExpr *e) { return TraverseCallCommon(e); }
|
||||
bool TraverseCXXMemberCallExpr(clang::CXXMemberCallExpr *e) { return TraverseCallCommon(e); }
|
||||
bool TraverseCXXOperatorCallExpr(clang::CXXOperatorCallExpr *e) { return TraverseCallCommon(e); }
|
||||
bool TraverseBinComma(clang::BinaryOperator *s);
|
||||
bool TraverseBinAssign(clang::BinaryOperator *e) { return TraverseAssignCommon(e, CF_Assigned); }
|
||||
#define OPERATOR(NAME) bool TraverseBin##NAME##Assign(clang::CompoundAssignOperator *e) { return TraverseAssignCommon(e, CF_Modified); }
|
||||
OPERATOR(Mul) OPERATOR(Div) OPERATOR(Rem) OPERATOR(Add) OPERATOR(Sub)
|
||||
OPERATOR(Shl) OPERATOR(Shr) OPERATOR(And) OPERATOR(Or) OPERATOR(Xor)
|
||||
#undef OPERATOR
|
||||
bool VisitParenExpr(clang::ParenExpr *e) { m_childContext = m_thisContext; return true; }
|
||||
bool VisitCastExpr(clang::CastExpr *e);
|
||||
bool VisitUnaryAddrOf(clang::UnaryOperator *e);
|
||||
bool VisitUnaryDeref(clang::UnaryOperator *e);
|
||||
bool VisitDeclStmt(clang::DeclStmt *s);
|
||||
bool VisitReturnStmt(clang::ReturnStmt *s);
|
||||
bool VisitVarDecl(clang::VarDecl *d);
|
||||
bool VisitInitListExpr(clang::InitListExpr *e);
|
||||
bool TraverseConstructorInitializer(clang::CXXCtorInitializer *init);
|
||||
bool TraverseCallCommon(clang::CallExpr *call);
|
||||
bool TraverseAssignCommon(clang::BinaryOperator *e, ContextFlags lhsFlag);
|
||||
|
||||
// Expression reference recording
|
||||
bool VisitLambdaExpr(clang::LambdaExpr* e);
|
||||
bool VisitMemberExpr(clang::MemberExpr *e);
|
||||
bool VisitDeclRefExpr(clang::DeclRefExpr *e);
|
||||
bool VisitCXXConstructExpr(clang::CXXConstructExpr *e);
|
||||
void RecordDeclRefExpr(clang::NamedDecl *d, clang::SourceLocation loc, clang::Expr *e, Context context);
|
||||
|
||||
// NestedNameSpecifier handling
|
||||
bool TraverseNestedNameSpecifierLoc(clang::NestedNameSpecifierLoc qualifier);
|
||||
|
||||
// Declaration and TypeLoc handling
|
||||
void traverseDeclContextHelper(clang::DeclContext *d);
|
||||
bool TraverseCXXRecordDecl(clang::CXXRecordDecl *d);
|
||||
bool TraverseNamespaceAliasDecl(clang::NamespaceAliasDecl *d);
|
||||
bool TraverseClassTemplateSpecializationDecl(
|
||||
clang::ClassTemplateSpecializationDecl *d);
|
||||
void templateParameterListsHelper(clang::DeclaratorDecl *d);
|
||||
bool VisitDecl(clang::Decl *d);
|
||||
bool VisitTypeLoc(clang::TypeLoc tl);
|
||||
|
||||
// Reference recording
|
||||
ParseLocation getDeclRefRange(
|
||||
clang::NamedDecl *decl,
|
||||
clang::SourceLocation loc);
|
||||
|
||||
void RecordTypeRef(
|
||||
const clang::Type* type,
|
||||
clang::SourceLocation beginLoc,
|
||||
RefType refType,
|
||||
SymbolType symbolType = ST_Max);
|
||||
|
||||
void RecordDeclRef(
|
||||
clang::NamedDecl *d,
|
||||
clang::SourceLocation beginLoc,
|
||||
RefType refType,
|
||||
SymbolType symbolType = ST_Max);
|
||||
|
||||
bool isLocatedInUnparsedProjectFile(clang::SourceLocation loc);
|
||||
bool isLocatedInProjectFile(clang::SourceLocation loc);
|
||||
|
||||
ParserClient::AccessType convertAccessType(clang::AccessSpecifier access) const;
|
||||
ParserClient::AbstractionType getAbstractionType(const clang::CXXMethodDecl* methodDecl) const;
|
||||
ParseLocation getParseLocationOfRecordBody(clang::RecordDecl* decl) const;
|
||||
ParseLocation getParseLocationOfFunctionBody(const clang::FunctionDecl* decl) const;
|
||||
ParseLocation getParseLocation(const clang::SourceRange& sourceRange) const;
|
||||
|
||||
struct FileIdHash {
|
||||
size_t operator()(clang::FileID fileID) const {
|
||||
return fileID.getHashValue();
|
||||
}
|
||||
};
|
||||
|
||||
std::unordered_map<const clang::FileID, bool, FileIdHash> m_inUnparsedProjectFileMap;
|
||||
std::unordered_map<const clang::FileID, bool, FileIdHash> m_inProjectFileMap;
|
||||
|
||||
std::shared_ptr<ContextNameGenerator> m_contextNameGenerator;
|
||||
std::shared_ptr<ContextNameGenerator> m_childContextNameGenerator;
|
||||
|
||||
std::shared_ptr<DeclNameCache> m_declNameCache;
|
||||
std::shared_ptr<TypeNameCache> m_typeNameCache;
|
||||
|
||||
ParserClient::AccessType m_contextAccess;
|
||||
};
|
||||
|
||||
#endif // AST_VISITOR_H
|
||||
|
||||
@@ -54,7 +54,7 @@ NameHierarchy CxxDeclNameResolver::getContextNameHierarchy(const clang::DeclCont
|
||||
{
|
||||
NameHierarchy contextNameHierarchy;
|
||||
|
||||
if (!ignoresContext(declContext))
|
||||
if (declContext && !ignoresContext(declContext))
|
||||
{
|
||||
const clang::DeclContext* parentContext = declContext->getParent();
|
||||
if (parentContext)
|
||||
@@ -139,7 +139,7 @@ std::shared_ptr<NameElement> CxxDeclNameResolver::getDeclName()
|
||||
const clang::SourceManager& sourceManager = declaration->getASTContext().getSourceManager();
|
||||
const clang::PresumedLoc& presumedBegin = sourceManager.getPresumedLoc(recordDecl->getLocStart());
|
||||
std::string lambdaName = "lambda at " + std::to_string(presumedBegin.getLine()) + ":" + std::to_string(presumedBegin.getColumn());
|
||||
return std::make_shared<NameElement>(lambdaName, lambdaName);
|
||||
return std::make_shared<NameElement>(lambdaName, NameElement::Signature("void", "()"));
|
||||
}
|
||||
else if (declNameString.size() == 0)
|
||||
{
|
||||
@@ -160,15 +160,16 @@ std::shared_ptr<NameElement> CxxDeclNameResolver::getDeclName()
|
||||
}
|
||||
}
|
||||
|
||||
const clang::FunctionDecl* functionDecl = clang::dyn_cast<clang::FunctionDecl>(declaration);
|
||||
std::string functionName;
|
||||
|
||||
const clang::FunctionDecl* functionDecl = clang::dyn_cast<clang::FunctionDecl>(declaration);
|
||||
if (clang::FunctionTemplateDecl* templateFunctionDeclaration = functionDecl->getDescribedFunctionTemplate())
|
||||
{
|
||||
return getDeclName(templateFunctionDeclaration);
|
||||
functionName = getDeclName(templateFunctionDeclaration)->getName();
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
std::string functionName = declNameString;
|
||||
functionName = declNameString;
|
||||
if (functionDecl->isFunctionTemplateSpecialization())
|
||||
{
|
||||
std::string templateArgumentNamePart = "<";
|
||||
@@ -182,40 +183,40 @@ std::shared_ptr<NameElement> CxxDeclNameResolver::getDeclName()
|
||||
templateArgumentNamePart += ">";
|
||||
functionName += templateArgumentNamePart;
|
||||
}
|
||||
|
||||
bool isStatic = false;
|
||||
bool isConst = false;
|
||||
|
||||
if (clang::isa<clang::CXXMethodDecl>(declaration))
|
||||
{
|
||||
const clang::CXXMethodDecl* methodDecl = clang::dyn_cast<const clang::CXXMethodDecl>(declaration);
|
||||
isStatic = methodDecl->isStatic();
|
||||
isConst = methodDecl->isConst();
|
||||
}
|
||||
else
|
||||
{
|
||||
isStatic = functionDecl->getStorageClass() == clang::SC_Static;
|
||||
}
|
||||
|
||||
CxxTypeNameResolver typenNameResolver(getIgnoredContextDecls());
|
||||
typenNameResolver.ignoreContextDecl(functionDecl);
|
||||
std::string returnTypeString = typenNameResolver.qualTypeToDataType(functionDecl->getReturnType())->getFullTypeName();
|
||||
|
||||
std::string parameterString = "(";
|
||||
for (unsigned int i = 0; i < functionDecl->param_size(); i++)
|
||||
{
|
||||
parameterString += typenNameResolver.qualTypeToDataType(functionDecl->parameters()[i]->getType())->getFullTypeName();
|
||||
if (i < functionDecl->param_size() - 1)
|
||||
{
|
||||
parameterString += ", ";
|
||||
}
|
||||
}
|
||||
parameterString += ")";
|
||||
|
||||
return std::make_shared<NameElement>(
|
||||
functionName,
|
||||
(isStatic ? "static " : "") + returnTypeString + " " + functionName + parameterString + (isConst ? " const" : ""));
|
||||
}
|
||||
|
||||
bool isStatic = false;
|
||||
bool isConst = false;
|
||||
|
||||
if (clang::isa<clang::CXXMethodDecl>(declaration))
|
||||
{
|
||||
const clang::CXXMethodDecl* methodDecl = clang::dyn_cast<const clang::CXXMethodDecl>(declaration);
|
||||
isStatic = methodDecl->isStatic();
|
||||
isConst = methodDecl->isConst();
|
||||
}
|
||||
else
|
||||
{
|
||||
isStatic = functionDecl->getStorageClass() == clang::SC_Static;
|
||||
}
|
||||
|
||||
CxxTypeNameResolver typenNameResolver(getIgnoredContextDecls());
|
||||
typenNameResolver.ignoreContextDecl(functionDecl);
|
||||
std::string returnTypeString = typenNameResolver.qualTypeToDataType(functionDecl->getReturnType())->getFullTypeName();
|
||||
|
||||
std::string parameterString = "(";
|
||||
for (unsigned int i = 0; i < functionDecl->param_size(); i++)
|
||||
{
|
||||
if (i > 0)
|
||||
{
|
||||
parameterString += ", ";
|
||||
}
|
||||
parameterString += typenNameResolver.qualTypeToDataType(functionDecl->parameters()[i]->getType())->getFullTypeName();
|
||||
}
|
||||
parameterString += ")";
|
||||
|
||||
return std::make_shared<NameElement>(
|
||||
functionName,
|
||||
NameElement::Signature((isStatic ? "static " : "") + returnTypeString, parameterString + (isConst ? " const" : "")));
|
||||
|
||||
}
|
||||
else if (clang::isa<clang::TemplateDecl>(declaration)) // also triggers on TemplateTemplateParmDecl
|
||||
|
||||
@@ -134,11 +134,11 @@ std::shared_ptr<DataType> CxxTypeNameResolver::typeToDataType(const clang::Type*
|
||||
}
|
||||
templateArgumentNamePart += ">";
|
||||
|
||||
std::string declName = typeNameHerarchy.back()->getFullName();
|
||||
std::string declName = typeNameHerarchy.back()->getName();
|
||||
declName = declName.substr(0, declName.rfind("<")); // remove template parameters
|
||||
declName += templateArgumentNamePart; // add template arguments
|
||||
typeNameHerarchy.pop();
|
||||
typeNameHerarchy.push(std::make_shared<NameElement>(declName));
|
||||
typeNameHerarchy.push(std::make_shared<NameElement>(declName)); // templateSpecialization has no signature.
|
||||
}
|
||||
}
|
||||
dataType = std::make_shared<NamedDataType>(typeNameHerarchy);
|
||||
@@ -219,6 +219,11 @@ std::shared_ptr<DataType> CxxTypeNameResolver::typeToDataType(const clang::Type*
|
||||
return dataType;
|
||||
}
|
||||
|
||||
NameHierarchy CxxTypeNameResolver::getTypeNameHierarchy(const clang::Type* type)
|
||||
{
|
||||
return typeToDataType(type)->getTypeNameHierarchy();
|
||||
}
|
||||
|
||||
NameHierarchy CxxTypeNameResolver::getNameHierarchy(const clang::NestedNameSpecifier* nestedNameSpecifier)
|
||||
{
|
||||
clang::NestedNameSpecifier::SpecifierKind nnsKind = nestedNameSpecifier->getKind();
|
||||
|
||||
@@ -12,6 +12,7 @@ public:
|
||||
virtual ~CxxTypeNameResolver();
|
||||
|
||||
std::shared_ptr<DataType> qualTypeToDataType(clang::QualType qualType);
|
||||
NameHierarchy getTypeNameHierarchy(const clang::Type* type);
|
||||
|
||||
private:
|
||||
std::shared_ptr<DataType> typeToDataType(const clang::Type* type);
|
||||
|
||||
+2228
-2386
File diff suppressed because it is too large
Load Diff
+94
-140
@@ -25,13 +25,11 @@ public:
|
||||
void test_storage_saves_typedef()
|
||||
{
|
||||
TestStorage storage;
|
||||
Id id = storage.onTypedefParsed(validLocation(1), createNameHierarchy("type"), typeUsage("int"), ParserClient::ACCESS_NONE);
|
||||
Id id = storage.onTypedefParsed(validLocation(1), createNameHierarchy("type"), ParserClient::ACCESS_NONE);
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "type");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "type");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_TYPEDEF);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPEDEF_OF, "type", "int") != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
}
|
||||
@@ -41,7 +39,7 @@ public:
|
||||
TestStorage storage;
|
||||
Id id = storage.onClassParsed(validLocation(1), createNameHierarchy("Class"), ParserClient::ACCESS_NONE, validLocation(2));
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "Class");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "Class");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_CLASS);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
@@ -54,7 +52,7 @@ public:
|
||||
TestStorage storage;
|
||||
Id id = storage.onStructParsed(validLocation(1), createNameHierarchy("Struct"), ParserClient::ACCESS_NONE, validLocation(2));
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "Struct");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "Struct");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_STRUCT);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
@@ -65,29 +63,11 @@ public:
|
||||
void test_storage_saves_global_variable()
|
||||
{
|
||||
TestStorage storage;
|
||||
Id id = storage.onGlobalVariableParsed(validLocation(42), ParseVariable(typeUsage("char"), createNameHierarchy("Global"), false));
|
||||
Id id = storage.onGlobalVariableParsed(validLocation(42), createNameHierarchy("Global"));
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "Global");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "Global");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_GLOBAL_VARIABLE);
|
||||
|
||||
//TS_ASSERT(!node->getComponent<TokenComponentStatic>());
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_OF, "Global", "char") != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
}
|
||||
|
||||
void test_storage_saves_global_variable_static()
|
||||
{
|
||||
TestStorage storage;
|
||||
Id id = storage.onGlobalVariableParsed(validLocation(7), ParseVariable(typeUsage("char"), createNameHierarchy("Global"), true));
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "Global");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_GLOBAL_VARIABLE);
|
||||
|
||||
//TS_ASSERT(node->getComponent<TokenComponentStatic>());
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
}
|
||||
@@ -96,36 +76,28 @@ public:
|
||||
{
|
||||
TestStorage storage;
|
||||
Id id = storage.onFieldParsed(
|
||||
validLocation(3), ParseVariable(typeUsage("bool"), createNameHierarchy("m_field"), false), ParserClient::ACCESS_NONE
|
||||
);
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "m_field");
|
||||
validLocation(3), createNameHierarchy("m_field"), ParserClient::ACCESS_NONE);
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "m_field");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_FIELD);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_OF, "m_field", "bool") != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
}
|
||||
|
||||
void test_storage_saves_field_as_member()
|
||||
{
|
||||
NameHierarchy a = createNameHierarchy("Struct::m_field");
|
||||
NameHierarchy b = createNameHierarchy("Struct");
|
||||
|
||||
TestStorage storage;
|
||||
Id id = storage.onFieldParsed(
|
||||
validLocation(11), ParseVariable(typeUsage("bool"), createNameHierarchy("Struct::m_field"), false), ParserClient::ACCESS_PUBLIC
|
||||
validLocation(11), a, ParserClient::ACCESS_PUBLIC
|
||||
);
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "Struct::m_field");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "Struct::m_field");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_FIELD);
|
||||
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_MEMBER, "Struct", "Struct::m_field") != 0);
|
||||
//TS_ASSERT(memberEdge->getComponent<TokenComponentAccess>());
|
||||
//TS_ASSERT_EQUALS(
|
||||
// memberEdge->getComponent<TokenComponentAccess>()->getAccess(), TokenComponentAccess::ACCESS_PUBLIC
|
||||
//);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_OF, "Struct::m_field", "bool") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_MEMBER, b, a) != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
@@ -135,17 +107,12 @@ public:
|
||||
{
|
||||
TestStorage storage;
|
||||
Id id = storage.onFunctionParsed(
|
||||
validLocation(14), ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char")), validLocation(41)
|
||||
validLocation(14), createFunctionNameHierarchy("bool", "isTrue", "(char)"), validLocation(41)
|
||||
);
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "isTrue");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "bool isTrue(char)");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_FUNCTION);
|
||||
|
||||
// TS_ASSERT(storage.getEdgeId(Edge::EDGE_RETURN_TYPE_OF, "isTrue", "bool") != 0);
|
||||
// TS_ASSERT(storage.getEdgeId(Edge::EDGE_PARAMETER_TYPE_OF, "isTrue", "char") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_USAGE, "isTrue", "bool") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_USAGE, "isTrue", "char") != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 2);
|
||||
}
|
||||
@@ -155,20 +122,15 @@ public:
|
||||
TestStorage storage;
|
||||
Id id = storage.onMethodParsed(
|
||||
validLocation(9),
|
||||
ParseFunction(typeUsage("void"), createNameHierarchy("isMethod"), parameters("bool")),
|
||||
createFunctionNameHierarchy("void", "isMethod", "(bool)"),
|
||||
ParserClient::ACCESS_NONE,
|
||||
ParserClient::ABSTRACTION_NONE,
|
||||
validLocation(4)
|
||||
);
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "isMethod");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "void isMethod(bool)");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_METHOD);
|
||||
|
||||
// TS_ASSERT(storage.getEdgeId(Edge::EDGE_RETURN_TYPE_OF, "isMethod", "void") != 0);
|
||||
// TS_ASSERT(storage.getEdgeId(Edge::EDGE_PARAMETER_TYPE_OF, "isMethod", "bool") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_USAGE, "isMethod", "void") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_USAGE, "isMethod", "bool") != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 2);
|
||||
}
|
||||
@@ -186,33 +148,24 @@ public:
|
||||
|
||||
//Node* node = storage.getNodeWithId(id);
|
||||
//TS_ASSERT(node);
|
||||
//TS_ASSERT_EQUALS(node->getFullName(), "isMethod");
|
||||
//TS_ASSERT_EQUALS(node->getQualifiedNameWithSignature(), "isMethod");
|
||||
//TS_ASSERT_EQUALS(node->getType(), Node::NODE_METHOD);
|
||||
//TS_ASSERT(node->getComponent<TokenComponentStatic>());
|
||||
}
|
||||
|
||||
void test_storage_saves_method_as_member()
|
||||
{
|
||||
NameHierarchy a = createFunctionNameHierarchy("void", "Class::isMethod", "(bool)");
|
||||
TestStorage storage;
|
||||
storage.onMethodParsed(
|
||||
validLocation(1),
|
||||
ParseFunction(typeUsage("void"), createNameHierarchy("Class::isMethod"), parameters("bool")),
|
||||
a,
|
||||
ParserClient::ACCESS_PROTECTED,
|
||||
ParserClient::ABSTRACTION_VIRTUAL,
|
||||
validLocation(4)
|
||||
);
|
||||
|
||||
//TS_ASSERT(node->getComponent<TokenComponentAbstraction>());
|
||||
//TS_ASSERT_EQUALS(
|
||||
// node->getComponent<TokenComponentAbstraction>()->getAbstraction(),
|
||||
// TokenComponentAbstraction::ABSTRACTION_VIRTUAL
|
||||
//);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_MEMBER, "Class", "Class::isMethod") != 0);
|
||||
//TS_ASSERT(memberEdge->getComponent<TokenComponentAccess>());
|
||||
//TS_ASSERT_EQUALS(
|
||||
// memberEdge->getComponent<TokenComponentAccess>()->getAccess(), TokenComponentAccess::ACCESS_PROTECTED
|
||||
//);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_MEMBER, createNameHierarchy("Class"), a) != 0);
|
||||
}
|
||||
|
||||
void test_storage_saves_namespace()
|
||||
@@ -220,7 +173,7 @@ public:
|
||||
TestStorage storage;
|
||||
Id id = storage.onNamespaceParsed(validLocation(1), createNameHierarchy("utility"), validLocation(2));
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "utility");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "utility");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_NAMESPACE);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
@@ -233,7 +186,7 @@ public:
|
||||
TestStorage storage;
|
||||
Id id = storage.onEnumParsed(validLocation(17), createNameHierarchy("Category"), ParserClient::ACCESS_NONE, validLocation(23));
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "Category");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "Category");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_ENUM);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
@@ -243,18 +196,14 @@ public:
|
||||
|
||||
void test_storage_saves_enum_as_member()
|
||||
{
|
||||
NameHierarchy a = createNameHierarchy("Class::Category");
|
||||
TestStorage storage;
|
||||
storage.onEnumParsed(
|
||||
validLocation(1), createNameHierarchy("Class::Category"),
|
||||
validLocation(1), a,
|
||||
ParserClient::ACCESS_PRIVATE, validLocation(2)
|
||||
);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_MEMBER, "Class", "Class::Category") != 0);
|
||||
|
||||
//TS_ASSERT(memberEdge->getComponent<TokenComponentAccess>());
|
||||
//TS_ASSERT_EQUALS(
|
||||
// memberEdge->getComponent<TokenComponentAccess>()->getAccess(), TokenComponentAccess::ACCESS_PRIVATE
|
||||
//);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_MEMBER, createNameHierarchy("Class"), a) != 0);
|
||||
}
|
||||
|
||||
void test_storage_saves_enum_constant()
|
||||
@@ -262,7 +211,7 @@ public:
|
||||
TestStorage storage;
|
||||
Id id = storage.onEnumConstantParsed(validLocation(1), createNameHierarchy("VALUE"));
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "VALUE");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "VALUE");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_ENUM_CONSTANT);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
@@ -279,7 +228,7 @@ public:
|
||||
createNameHierarchy("ClassA"), ParserClient::ACCESS_PUBLIC
|
||||
);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_INHERITANCE, "ClassB", "ClassA") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_INHERITANCE, createNameHierarchy("ClassB"), createNameHierarchy("ClassA")) != 0);
|
||||
//TS_ASSERT(edge->getComponent<TokenComponentAccess>());
|
||||
//TS_ASSERT_EQUALS(edge->getComponent<TokenComponentAccess>()->getAccess(), TokenComponentAccess::ACCESS_PUBLIC);
|
||||
|
||||
@@ -297,7 +246,7 @@ public:
|
||||
createNameHierarchy("StructA"), ParserClient::ACCESS_PUBLIC
|
||||
);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_INHERITANCE, "StructB", "StructA") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_INHERITANCE, createNameHierarchy("StructB"), createNameHierarchy("StructA")) != 0);
|
||||
|
||||
//TS_ASSERT(edge->getComponent<TokenComponentAccess>());
|
||||
//TS_ASSERT_EQUALS(edge->getComponent<TokenComponentAccess>()->getAccess(), TokenComponentAccess::ACCESS_PUBLIC);
|
||||
@@ -310,33 +259,47 @@ public:
|
||||
{
|
||||
TestStorage storage;
|
||||
|
||||
ParseFunction a(typeUsage("void"), createNameHierarchy("A::isMethod"), parameters("bool"));
|
||||
ParseFunction b(typeUsage("void"), createNameHierarchy("B::isMethod"), parameters("bool"));
|
||||
NameHierarchy a = createFunctionNameHierarchy("void", "A::isMethod", "(bool)");
|
||||
NameHierarchy b = createFunctionNameHierarchy("void", "B::isMethod", "(bool)");
|
||||
|
||||
storage.onMethodParsed(validLocation(9), a, ParserClient::ACCESS_PRIVATE, ParserClient::ABSTRACTION_VIRTUAL, validLocation(4));
|
||||
storage.onMethodParsed(validLocation(7), b, ParserClient::ACCESS_PRIVATE, ParserClient::ABSTRACTION_NONE, validLocation(3));
|
||||
storage.onMethodParsed(
|
||||
validLocation(9),
|
||||
a,
|
||||
ParserClient::ACCESS_PRIVATE,
|
||||
ParserClient::ABSTRACTION_VIRTUAL,
|
||||
validLocation(4));
|
||||
storage.onMethodParsed(
|
||||
validLocation(7),
|
||||
b,
|
||||
ParserClient::ACCESS_PRIVATE,
|
||||
ParserClient::ABSTRACTION_NONE,
|
||||
validLocation(3));
|
||||
|
||||
storage.onMethodOverrideParsed(validLocation(4), a, b);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_OVERRIDE, "B::isMethod", "A::isMethod") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_OVERRIDE, b, a) != 0);
|
||||
}
|
||||
|
||||
void test_storage_saves_call()
|
||||
{
|
||||
TestStorage storage;
|
||||
|
||||
NameHierarchy a = createFunctionNameHierarchy("bool", "isTrue", "(char)");
|
||||
NameHierarchy b = createFunctionNameHierarchy("void", "func", "(bool)");
|
||||
|
||||
storage.onFunctionParsed(
|
||||
validLocation(), ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char")), validLocation()
|
||||
validLocation(), a, validLocation()
|
||||
);
|
||||
storage.onFunctionParsed(
|
||||
validLocation(), ParseFunction(typeUsage("void"), createNameHierarchy("func"), parameters("bool")), validLocation()
|
||||
validLocation(), b, validLocation()
|
||||
);
|
||||
Id id = storage.onCallParsed(
|
||||
validLocation(9),
|
||||
ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char")),
|
||||
ParseFunction(typeUsage("void"), createNameHierarchy("func"), parameters("bool"))
|
||||
a,
|
||||
b
|
||||
);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_CALL, "isTrue", "func") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_CALL, a, b) != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
@@ -344,19 +307,22 @@ public:
|
||||
|
||||
void test_storage_saves_call_in_global_variable_declaration()
|
||||
{
|
||||
|
||||
TestStorage storage;
|
||||
storage.onGlobalVariableParsed(validLocation(), ParseVariable(typeUsage("bool"), createNameHierarchy("global"), false));
|
||||
storage.onGlobalVariableParsed(validLocation(), createNameHierarchy("global"));
|
||||
|
||||
NameHierarchy a = createFunctionNameHierarchy("bool", "isTrue", "(char)");
|
||||
storage.onFunctionParsed(
|
||||
validLocation(), ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char")), validLocation()
|
||||
validLocation(), a, validLocation()
|
||||
);
|
||||
|
||||
Id id = storage.onCallParsed(
|
||||
validLocation(7),
|
||||
ParseVariable(typeUsage("bool"), createNameHierarchy("global"), false),
|
||||
ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char"))
|
||||
createNameHierarchy("global"),
|
||||
a
|
||||
);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_CALL, "global", "isTrue") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_CALL, createNameHierarchy("global"), a) != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
@@ -364,21 +330,23 @@ public:
|
||||
|
||||
void test_storage_saves_field_usage()
|
||||
{
|
||||
NameHierarchy a = createFunctionNameHierarchy("bool", "isTrue", "(char)");
|
||||
|
||||
TestStorage storage;
|
||||
storage.onFunctionParsed(
|
||||
validLocation(), ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char")), validLocation()
|
||||
validLocation(), a, validLocation()
|
||||
);
|
||||
storage.onFieldParsed(
|
||||
validLocation(), ParseVariable(typeUsage("bool"), createNameHierarchy("Foo::m_field"), false), ParserClient::ACCESS_PRIVATE
|
||||
validLocation(), createNameHierarchy("Foo::m_field"), ParserClient::ACCESS_PRIVATE
|
||||
);
|
||||
|
||||
Id id = storage.onFieldUsageParsed(
|
||||
validLocation(7),
|
||||
ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char")),
|
||||
a,
|
||||
createNameHierarchy("Foo::m_field")
|
||||
);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_USAGE, "isTrue", "Foo::m_field") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_USAGE, a, createNameHierarchy("Foo::m_field")) != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
@@ -386,19 +354,21 @@ public:
|
||||
|
||||
void test_storage_saves_global_variable_usage()
|
||||
{
|
||||
NameHierarchy a = createFunctionNameHierarchy("bool", "isTrue", "(char)");
|
||||
|
||||
TestStorage storage;
|
||||
storage.onFunctionParsed(
|
||||
validLocation(), ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char")), validLocation()
|
||||
validLocation(), a, validLocation()
|
||||
);
|
||||
storage.onGlobalVariableParsed(validLocation(), ParseVariable(typeUsage("bool"), createNameHierarchy("global"), false));
|
||||
storage.onGlobalVariableParsed(validLocation(), createNameHierarchy("global"));
|
||||
|
||||
Id id = storage.onGlobalVariableUsageParsed(
|
||||
validLocation(7),
|
||||
ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char")),
|
||||
a,
|
||||
createNameHierarchy("global")
|
||||
);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_USAGE, "isTrue", "global") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_USAGE, a, createNameHierarchy("global")) != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
@@ -406,20 +376,19 @@ public:
|
||||
|
||||
void test_storage_saves_type_usage()
|
||||
{
|
||||
NameHierarchy a = createFunctionNameHierarchy("Struct", "isTrue", "(char)");
|
||||
TestStorage storage;
|
||||
storage.onFunctionParsed(
|
||||
validLocation(), ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"),
|
||||
parameters("char")), validLocation()
|
||||
validLocation(), a, validLocation()
|
||||
);
|
||||
storage.onStructParsed(
|
||||
validLocation(), createNameHierarchy("Struct"), ParserClient::ACCESS_NONE, validLocation());
|
||||
|
||||
Id id = storage.onTypeUsageParsed(
|
||||
typeUsage("Struct"),
|
||||
ParseFunction(typeUsage("bool"), createNameHierarchy("isTrue"), parameters("char"))
|
||||
validLocation(7), a, createNameHierarchy("Struct")
|
||||
);
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_USAGE, "isTrue", "Struct") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_TYPE_USAGE, a, createNameHierarchy("Struct")) != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
@@ -548,7 +517,7 @@ public:
|
||||
|
||||
Id id = storage.onFileParsed(FileInfo("file.h"));
|
||||
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getFullName(), "file.h");
|
||||
TS_ASSERT_EQUALS(storage.getNameHierarchyForNodeWithId(id).getQualifiedNameWithSignature(), "file.h");
|
||||
TS_ASSERT_EQUALS(storage.getNodeTypeForNodeWithId(id), Node::NODE_FILE);
|
||||
}
|
||||
|
||||
@@ -560,7 +529,7 @@ public:
|
||||
storage.onFileParsed(FileInfo("file.cpp"));
|
||||
Id id = storage.onFileIncludeParsed(validLocation(7), FileInfo("file.cpp"), FileInfo("file.h"));
|
||||
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_INCLUDE, "file.cpp", "file.h") != 0);
|
||||
TS_ASSERT(storage.getEdgeId(Edge::EDGE_INCLUDE, createNameHierarchy("file.cpp"), createNameHierarchy("file.h")) != 0);
|
||||
|
||||
std::shared_ptr<TokenLocationCollection> tlc = storage.getLocationCollectionForTokenId(id);
|
||||
TS_ASSERT_EQUALS(tlc->getTokenLocationCount(), 1);
|
||||
@@ -576,8 +545,8 @@ public:
|
||||
//Id id4 = storage.onFileIncludeParsed(validLocation(), "file.h", "f.h");
|
||||
//Id id5 = storage.onFileIncludeParsed(validLocation(), "file.cpp", "file.h");
|
||||
|
||||
//std::string name1 = storage.getNodeWithId(id2)->getFullName();
|
||||
//std::string name2 = storage.getNodeWithId(id3)->getFullName();
|
||||
//std::string name1 = storage.getNodeWithId(id2)->getQualifiedNameWithSignature();
|
||||
//std::string name2 = storage.getNodeWithId(id3)->getQualifiedNameWithSignature();
|
||||
|
||||
//std::set<FilePath> filePaths;
|
||||
//filePaths.insert(FilePath(name1));
|
||||
@@ -632,22 +601,11 @@ private:
|
||||
return getSearchIndex();
|
||||
}
|
||||
|
||||
NameHierarchy nameHierarchyFromString(const std::string& str) const
|
||||
{
|
||||
NameHierarchy result;
|
||||
std::vector<std::string> names = utility::splitToVector(str, "::");
|
||||
for (const std::string& name : names)
|
||||
{
|
||||
result.push(std::make_shared<NameElement>(name));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
Id getEdgeId(Edge::EdgeType type, const std::string& fromName, const std::string& toName) const
|
||||
Id getEdgeId(Edge::EdgeType type, const NameHierarchy& fromName, const NameHierarchy& toName) const
|
||||
{
|
||||
NameHierarchy from;
|
||||
|
||||
return getIdForEdge(type, nameHierarchyFromString(fromName), nameHierarchyFromString(toName));
|
||||
return getIdForEdge(type, fromName, toName);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -664,28 +622,24 @@ private:
|
||||
location->getColumnNumber() == locationId;
|
||||
}
|
||||
|
||||
NameHierarchy createFunctionNameHierarchy(std::string ret, std::string name, std::string parameters) const
|
||||
{
|
||||
NameHierarchy nameHierarchy = createNameHierarchy(name);
|
||||
std::string lastName = nameHierarchy.back()->getName();
|
||||
nameHierarchy.pop();
|
||||
nameHierarchy.push(std::make_shared<NameElement>(lastName, NameElement::Signature(ret, parameters)));
|
||||
return nameHierarchy;
|
||||
}
|
||||
|
||||
NameHierarchy createNameHierarchy(std::string s) const
|
||||
{
|
||||
NameHierarchy nameHierarchy;
|
||||
for (std::string element: utility::splitToVector(s, "::"))
|
||||
{
|
||||
std::string signature = (element.find("(") != element.npos ? element : "");
|
||||
nameHierarchy.push(std::make_shared<NameElement>(element, signature));
|
||||
nameHierarchy.push(std::make_shared<NameElement>(element, NameElement::Signature()));
|
||||
}
|
||||
return nameHierarchy;
|
||||
}
|
||||
|
||||
ParseTypeUsage typeUsage(const std::string& typeName) const
|
||||
{
|
||||
return ParseTypeUsage(validLocation(), std::make_shared<NamedDataType>(createNameHierarchy(typeName)));
|
||||
}
|
||||
|
||||
std::vector<ParseTypeUsage> parameters(const std::string& param) const
|
||||
{
|
||||
std::vector<ParseTypeUsage> params;
|
||||
params.push_back(typeUsage(param));
|
||||
return params;
|
||||
}
|
||||
|
||||
std::string m_filePath;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user