mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 09:40:21 +00:00
Add C++ sample
This commit is contained in:
@@ -257,8 +257,8 @@
|
||||
".gemrc"
|
||||
]
|
||||
},
|
||||
"tokens_total": 269224,
|
||||
"languages_total": 273,
|
||||
"tokens_total": 269398,
|
||||
"languages_total": 274,
|
||||
"tokens": {
|
||||
"Apex": {
|
||||
"global": 70,
|
||||
@@ -5573,19 +5573,19 @@
|
||||
"yajl_free_error": 1
|
||||
},
|
||||
"C++": {
|
||||
"class": 31,
|
||||
"class": 32,
|
||||
"Bar": 2,
|
||||
"{": 294,
|
||||
"{": 298,
|
||||
"protected": 4,
|
||||
"char": 34,
|
||||
"*name": 2,
|
||||
";": 831,
|
||||
"public": 23,
|
||||
";": 848,
|
||||
"public": 24,
|
||||
"void": 65,
|
||||
"hello": 2,
|
||||
"(": 888,
|
||||
")": 891,
|
||||
"}": 296,
|
||||
"(": 894,
|
||||
")": 896,
|
||||
"}": 300,
|
||||
"foo": 2,
|
||||
"cudaArray*": 1,
|
||||
"cu_array": 4,
|
||||
@@ -5599,7 +5599,7 @@
|
||||
"cudaCreateChannelDesc": 1,
|
||||
"<float>": 1,
|
||||
"cudaMallocArray": 1,
|
||||
"&": 84,
|
||||
"&": 87,
|
||||
"width": 5,
|
||||
"height": 5,
|
||||
"cudaMemcpyToArray": 1,
|
||||
@@ -5615,7 +5615,7 @@
|
||||
"cudaFilterModePoint": 1,
|
||||
"tex.normalized": 1,
|
||||
"false": 40,
|
||||
"//": 227,
|
||||
"//": 230,
|
||||
"do": 2,
|
||||
"not": 2,
|
||||
"normalize": 1,
|
||||
@@ -5630,7 +5630,7 @@
|
||||
"/": 9,
|
||||
"blockDim.y": 2,
|
||||
"kernel": 2,
|
||||
"<<": 5,
|
||||
"<<": 16,
|
||||
"<": 27,
|
||||
"d_data": 1,
|
||||
"cudaUnbindTexture": 1,
|
||||
@@ -5646,12 +5646,12 @@
|
||||
"y": 4,
|
||||
"blockIdx.y*blockDim.y": 1,
|
||||
"threadIdx.y": 1,
|
||||
"if": 137,
|
||||
"if": 138,
|
||||
"&&": 13,
|
||||
"c": 52,
|
||||
"tex2D": 1,
|
||||
"y*width": 1,
|
||||
"#include": 77,
|
||||
"#include": 79,
|
||||
"<QCoreApplication>": 1,
|
||||
"<QString>": 1,
|
||||
"<QVariantMap>": 2,
|
||||
@@ -5664,7 +5664,7 @@
|
||||
"instance": 4,
|
||||
"env_instance": 3,
|
||||
"new": 2,
|
||||
"return": 112,
|
||||
"return": 114,
|
||||
"QObject": 2,
|
||||
"QCoreApplication": 1,
|
||||
"parse": 3,
|
||||
@@ -5672,7 +5672,7 @@
|
||||
"**envp": 1,
|
||||
"**env": 1,
|
||||
"**": 2,
|
||||
"QString": 19,
|
||||
"QString": 20,
|
||||
"envvar": 2,
|
||||
"name": 3,
|
||||
"value": 5,
|
||||
@@ -5689,14 +5689,89 @@
|
||||
"QVariantMap": 3,
|
||||
"asVariantMap": 2,
|
||||
"m_map": 2,
|
||||
"#ifndef": 7,
|
||||
"#ifndef": 8,
|
||||
"ENV_H": 3,
|
||||
"#define": 7,
|
||||
"#define": 9,
|
||||
"<QObject>": 1,
|
||||
"Q_OBJECT": 1,
|
||||
"*instance": 1,
|
||||
"private": 10,
|
||||
"#endif": 18,
|
||||
"#endif": 19,
|
||||
"GDSDBREADER_H": 3,
|
||||
"<QDir>": 1,
|
||||
"GDS_DIR": 1,
|
||||
"enum": 6,
|
||||
"level": 1,
|
||||
"LEVEL_ONE": 1,
|
||||
"LEVEL_TWO": 1,
|
||||
"LEVEL_THREE": 1,
|
||||
"dbDataStructure": 2,
|
||||
"label": 1,
|
||||
"quint32": 3,
|
||||
"depth": 1,
|
||||
"userIndex": 1,
|
||||
"QByteArray": 1,
|
||||
"data": 2,
|
||||
"This": 4,
|
||||
"is": 33,
|
||||
"COMPRESSED": 1,
|
||||
"optimize": 1,
|
||||
"ram": 1,
|
||||
"and": 14,
|
||||
"disk": 1,
|
||||
"space": 2,
|
||||
"decompressed": 1,
|
||||
"quint64": 1,
|
||||
"uniqueID": 1,
|
||||
"QVector": 2,
|
||||
"<dbDataStructure*>": 1,
|
||||
"nextItems": 1,
|
||||
"<quint32>": 1,
|
||||
"nextItemsIndices": 1,
|
||||
"dbDataStructure*": 1,
|
||||
"father": 1,
|
||||
"fatherIndex": 1,
|
||||
"bool": 92,
|
||||
"noFatherRoot": 1,
|
||||
"Used": 1,
|
||||
"to": 74,
|
||||
"tell": 1,
|
||||
"this": 4,
|
||||
"node": 1,
|
||||
"the": 178,
|
||||
"root": 1,
|
||||
"so": 1,
|
||||
"hasn": 1,
|
||||
"t": 8,
|
||||
"in": 9,
|
||||
"argument": 1,
|
||||
"list": 2,
|
||||
"of": 44,
|
||||
"an": 2,
|
||||
"operator": 9,
|
||||
"overload.": 1,
|
||||
"A": 1,
|
||||
"friend": 7,
|
||||
"stream": 4,
|
||||
"myclass.label": 2,
|
||||
"myclass.depth": 2,
|
||||
"myclass.userIndex": 2,
|
||||
"qCompress": 2,
|
||||
"myclass.data": 4,
|
||||
"myclass.uniqueID": 2,
|
||||
"myclass.nextItemsIndices": 2,
|
||||
"myclass.fatherIndex": 2,
|
||||
"myclass.noFatherRoot": 2,
|
||||
"myclass.fileName": 2,
|
||||
"myclass.firstLineData": 4,
|
||||
"myclass.linesNumbers": 2,
|
||||
"QDataStream": 2,
|
||||
"myclass": 1,
|
||||
"//Don": 1,
|
||||
"read": 1,
|
||||
"it": 2,
|
||||
"either": 1,
|
||||
"qUncompress": 2,
|
||||
"<iostream>": 1,
|
||||
"using": 1,
|
||||
"namespace": 14,
|
||||
@@ -5806,7 +5881,6 @@
|
||||
"EC_KEY_dup": 1,
|
||||
"b.pkey": 2,
|
||||
"b.fSet": 2,
|
||||
"operator": 7,
|
||||
"EC_KEY_copy": 1,
|
||||
"hash": 20,
|
||||
"sizeof": 6,
|
||||
@@ -5815,11 +5889,9 @@
|
||||
"vchSig.clear": 2,
|
||||
"vchSig.resize": 2,
|
||||
"Shrink": 1,
|
||||
"to": 73,
|
||||
"fit": 1,
|
||||
"actual": 1,
|
||||
"size": 1,
|
||||
"bool": 91,
|
||||
"SignCompact": 2,
|
||||
"uint256": 10,
|
||||
"vector": 14,
|
||||
@@ -5837,7 +5909,6 @@
|
||||
"keyRec": 5,
|
||||
"1": 2,
|
||||
"GetPubKey": 5,
|
||||
"this": 3,
|
||||
"break": 30,
|
||||
"BN_bn2bin": 2,
|
||||
"/8": 2,
|
||||
@@ -5873,11 +5944,9 @@
|
||||
"str": 2,
|
||||
"CKeyID": 5,
|
||||
"uint160": 8,
|
||||
"in": 8,
|
||||
"CScriptID": 3,
|
||||
"CPubKey": 11,
|
||||
"vchPubKey": 6,
|
||||
"friend": 5,
|
||||
"vchPubKeyIn": 2,
|
||||
"a": 34,
|
||||
"a.vchPubKey": 3,
|
||||
@@ -5916,15 +5985,12 @@
|
||||
"QT_VERSION_CHECK": 1,
|
||||
"#error": 2,
|
||||
"Something": 1,
|
||||
"is": 30,
|
||||
"wrong": 1,
|
||||
"with": 3,
|
||||
"the": 176,
|
||||
"setup.": 1,
|
||||
"Please": 1,
|
||||
"report": 2,
|
||||
"mailing": 1,
|
||||
"list": 1,
|
||||
"argc": 2,
|
||||
"char**": 2,
|
||||
"argv": 2,
|
||||
@@ -5964,7 +6030,6 @@
|
||||
"The": 8,
|
||||
"QsciCommand": 7,
|
||||
"represents": 1,
|
||||
"an": 1,
|
||||
"internal": 10,
|
||||
"editor": 1,
|
||||
"command": 9,
|
||||
@@ -5981,20 +6046,16 @@
|
||||
"are": 3,
|
||||
"provided": 1,
|
||||
"change": 1,
|
||||
"and": 13,
|
||||
"remove": 1,
|
||||
"binding.": 1,
|
||||
"Each": 1,
|
||||
"has": 2,
|
||||
"user": 2,
|
||||
"friendly": 2,
|
||||
"of": 43,
|
||||
"use": 1,
|
||||
"mapping": 1,
|
||||
"dialogs.": 1,
|
||||
"QSCINTILLA_EXPORT": 2,
|
||||
"This": 3,
|
||||
"enum": 5,
|
||||
"defines": 1,
|
||||
"different": 1,
|
||||
"commands": 1,
|
||||
@@ -6392,10 +6453,8 @@
|
||||
"draw": 1,
|
||||
"text.": 3,
|
||||
"should": 1,
|
||||
"it": 1,
|
||||
"necessary": 1,
|
||||
"reserve": 1,
|
||||
"space": 1,
|
||||
"By": 1,
|
||||
"default": 3,
|
||||
"relative": 1,
|
||||
@@ -6572,7 +6631,6 @@
|
||||
"IsLineFeed": 2,
|
||||
"fall": 2,
|
||||
"through": 2,
|
||||
"t": 6,
|
||||
"u": 6,
|
||||
"v": 3,
|
||||
"xx": 1,
|
||||
@@ -27345,7 +27403,7 @@
|
||||
"Arduino": 20,
|
||||
"AutoHotkey": 3,
|
||||
"C": 49038,
|
||||
"C++": 9539,
|
||||
"C++": 9713,
|
||||
"Ceylon": 50,
|
||||
"CoffeeScript": 2955,
|
||||
"Coq": 18259,
|
||||
@@ -27415,7 +27473,7 @@
|
||||
"Arduino": 1,
|
||||
"AutoHotkey": 1,
|
||||
"C": 23,
|
||||
"C++": 16,
|
||||
"C++": 17,
|
||||
"Ceylon": 1,
|
||||
"CoffeeScript": 9,
|
||||
"Coq": 12,
|
||||
@@ -27479,5 +27537,5 @@
|
||||
"XSLT": 1,
|
||||
"YAML": 1
|
||||
},
|
||||
"md5": "0dd037f8ae8057afc1213dc441839d99"
|
||||
"md5": "ca1d189ca79aa9c52370da78f2c2b4dd"
|
||||
}
|
||||
69
samples/C++/gdsdbreader.h
Normal file
69
samples/C++/gdsdbreader.h
Normal file
@@ -0,0 +1,69 @@
|
||||
#ifndef GDSDBREADER_H
|
||||
#define GDSDBREADER_H
|
||||
|
||||
// This file contains core structures, classes and types for the entire gds app
|
||||
// WARNING: DO NOT MODIFY UNTIL IT'S STRICTLY NECESSARY
|
||||
|
||||
#include <QDir>
|
||||
#include "diagramwidget/qgldiagramwidget.h"
|
||||
|
||||
#define GDS_DIR "gdsdata"
|
||||
|
||||
enum level {LEVEL_ONE, LEVEL_TWO, LEVEL_THREE};
|
||||
|
||||
// The internal structure of the db to store information about each node (each level)
|
||||
// this will be serialized before being written to file
|
||||
class dbDataStructure
|
||||
{
|
||||
public:
|
||||
QString label;
|
||||
quint32 depth;
|
||||
quint32 userIndex;
|
||||
QByteArray data; // This is COMPRESSED data, optimize ram and disk space, is decompressed
|
||||
// just when needed (to display the comments)
|
||||
|
||||
// The following ID is used to create second-third level files
|
||||
quint64 uniqueID;
|
||||
// All the next items linked to this one
|
||||
QVector<dbDataStructure*> nextItems;
|
||||
// Corresponding indices vector (used to store data)
|
||||
QVector<quint32> nextItemsIndices;
|
||||
// The father element (or NULL if it's root)
|
||||
dbDataStructure* father;
|
||||
// Corresponding indices vector (used to store data)
|
||||
quint32 fatherIndex;
|
||||
bool noFatherRoot; // Used to tell if this node is the root (so hasn't a father)
|
||||
|
||||
// These fields will be useful for levels 2 and 3
|
||||
QString fileName; // Relative filename for the associated code file
|
||||
QByteArray firstLineData; // Compressed first line data, this will be used with the line number to retrieve info
|
||||
QVector<quint32> linesNumbers; // First and next lines (next are relative to the first) numbers
|
||||
|
||||
// -- Generic system data not to be stored on disk
|
||||
void *glPointer; // GL pointer
|
||||
|
||||
// These operator overrides prevent the glPointer and other non-disk-necessary data serialization
|
||||
friend QDataStream& operator<<(QDataStream& stream, const dbDataStructure& myclass)
|
||||
// Notice: this function has to be "friend" because it cannot be a member function, member functions
|
||||
// have an additional parameter "this" which isn't in the argument list of an operator overload. A friend
|
||||
// function has full access to private data of the class without having the "this" argument
|
||||
{
|
||||
// Don't write glPointer and every pointer-dependent structure
|
||||
return stream << myclass.label << myclass.depth << myclass.userIndex << qCompress(myclass.data)
|
||||
<< myclass.uniqueID << myclass.nextItemsIndices << myclass.fatherIndex << myclass.noFatherRoot
|
||||
<< myclass.fileName << qCompress(myclass.firstLineData) << myclass.linesNumbers;
|
||||
}
|
||||
friend QDataStream& operator>>(QDataStream& stream, dbDataStructure& myclass)
|
||||
{
|
||||
//Don't read it, either
|
||||
stream >> myclass.label >> myclass.depth >> myclass.userIndex >> myclass.data
|
||||
>> myclass.uniqueID >> myclass.nextItemsIndices >> myclass.fatherIndex >> myclass.noFatherRoot
|
||||
>> myclass.fileName >> myclass.firstLineData >> myclass.linesNumbers;
|
||||
myclass.data = qUncompress(myclass.data);
|
||||
myclass.firstLineData = qUncompress(myclass.firstLineData);
|
||||
return stream;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
#endif // GDSDBREADER_H
|
||||
Reference in New Issue
Block a user