Oswald Buddenhagen
0b0bbff094
move and rename ProItemReturn to VisitReturn
...
it's private to ProFileEvaluator::Private since the getting rid of
the visitor pattern.
2010-06-02 11:05:26 +02:00
Oswald Buddenhagen
5db91cf5bc
add custom string type
...
ProString is almost a QStringRef, except that it keeps a copy of instead
of a pointer to the QString - to make it refcountable. additionally, it
holds a hash so it can be efficiently used for repetetive hash lookups.
2010-06-02 11:05:26 +02:00
Oswald Buddenhagen
8df0fe8632
remove unused setters
2010-06-02 11:05:26 +02:00
Oswald Buddenhagen
c63453d878
reorganize AST
...
turn else, for(), defineTest() and defineReplace() into own node
types instead of treating them as magic conditionals/functions.
on top of that, introduce a proper branching node type, so finding
the alternative code paths can be moved into the parser instead of
burdening the evaluator with it.
2010-06-02 11:05:26 +02:00
Oswald Buddenhagen
f1b591bb06
merge ProFunction into ProCondition
...
there is no point in the split, given that there is nothing virtual any
more.
2010-06-02 11:05:25 +02:00
Oswald Buddenhagen
79fd001aff
fix memleak, part 2
...
the previous fix did not consider that ProFiles are a further
specialization of ProBlocks.
Reviewed-by: dt
Task-number: QTCREATORBUG-1003
2010-04-01 16:29:38 +02:00
hjk
9595504bda
Long live the king!
2010-03-05 11:28:13 +01:00
Oswald Buddenhagen
e22e8035c6
make profile cache thread safe
...
Reviewed-by: thiago
2010-02-26 13:09:20 +01:00
Oswald Buddenhagen
b309f9449a
directly link ProItems instead of using QList<ProItem*>
...
somewhat faster again
2010-02-05 15:20:25 +01:00
Oswald Buddenhagen
9341f7da4e
de-virtualize ProItem::kind(); use variable instead
...
now items have no vtable any more
2010-02-05 15:20:25 +01:00
Oswald Buddenhagen
143531289e
inline trivial functions
2010-02-05 15:20:25 +01:00
Oswald Buddenhagen
42fd31fb12
remove unused functions
2010-02-05 15:20:25 +01:00
Oswald Buddenhagen
a2dbeecdec
remove visitor pattern
...
it's overengineered for our purpose and would just get in the way of
planned optimizations.
2010-02-05 15:20:25 +01:00
Oswald Buddenhagen
9c7d803aec
don't pre-split RHS of variable assignments
...
creating tons of items is a tad allocation-intensive and thus slow.
this is probably slower for often-included files, as now the splitting
is done in every evaluation pass.
2010-01-25 16:53:56 +01:00
Oswald Buddenhagen
61772da250
omit comments from the "AST"
...
now that the tree will not be written out any more, we can save some
cpu and memory by not recording the information.
2010-01-25 16:53:56 +01:00
Oswald Buddenhagen
cc709e963e
purge unused "modified" flag from ProFile
2010-01-25 16:53:55 +01:00
hjk
93cbef8724
long live the king
2009-08-14 09:30:56 +02:00
Oswald Buddenhagen
90848b89b6
no point in ProFile being a QObject
...
cherry-pick of 9392acd40fc0102b6924c286fd6dbbc32244365b from qt
2009-07-14 11:29:20 +02:00
Jason McDonald
884b7af769
Update license headers and sales contact details.
...
Reviewed-by: Trust Me
2009-06-17 00:01:27 +10:00
Oswald Buddenhagen
88de3e6a45
support loops: implement for(), next() & break()
2009-05-25 18:35:12 +02:00
Oswald Buddenhagen
d077ba29c3
support custom functions: implement defineTest(), defineReplace(), defined(), return() & export()
2009-05-25 18:35:12 +02:00
hjk
8ca887aae2
Fixes: change file license headers to include LGPL
2009-02-25 09:15:00 +01:00
hjk
fe0533de2a
Fixes: move all files in shared/* to src/shared/*
2009-01-26 16:19:24 +01:00