Jan Steemann
6dfe652d56
cleanup v8 expressions in coordinator, too
2014-10-23 22:22:15 +02:00
Jan Steemann
8583dc08ca
fix V8 segfault
2014-10-23 14:03:50 +02:00
Jan Steemann
ee614d6ebd
v8 context handling
2014-10-17 15:25:06 +02:00
Jan Steemann
912a8162fb
some renaming
2014-10-16 17:23:50 +02:00
Jan Steemann
70c59a61fd
removed macro
2014-10-16 16:28:18 +02:00
Jan Steemann
64fd7ea4b3
conversions
2014-10-16 10:20:04 +02:00
Jan Steemann
6895ba9e27
fixed tests
2014-10-14 13:20:10 +02:00
Willi Goesgens
c01e31c404
when de-serializing nodes don't create new variables, but look up the ones we already have.
2014-10-06 11:55:11 +02:00
Jan Steemann
f3186fa065
cppcheck
2014-09-29 17:02:40 +02:00
Jan Steemann
ae5f454bfc
added unary operator
2014-09-19 17:46:36 +02:00
Jan Steemann
92e46b8191
use SimpleExpression for more types of expressions
2014-09-19 17:40:47 +02:00
Jan Steemann
9a6dfa1db2
execute several types of expressions in C++
2014-09-19 15:21:01 +02:00
Jan Steemann
1d87957b40
reserve enough memory for simple lists & arrays
2014-09-19 12:44:46 +02:00
Willi Goesgens
0d376ab37a
Errormessages: show which execution state we're in so the user can better tell appart runtime from syntax errors.
2014-09-16 11:05:43 +02:00
Max Neunhoeffer
23dc7ef617
Fix the AqlValue Range type leak.
2014-09-16 10:25:25 +02:00
Jan Steemann
6fad76928d
Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
2014-09-15 18:17:53 +02:00
Jan Steemann
60f2136b8d
fixed reporting error position in queries with newlines
2014-09-15 18:17:20 +02:00
Willi Goesgens
7e44fa03d0
Try to add a human readable representation to an expression if it throws.
2014-09-15 16:44:55 +02:00
Jan Steemann
34d2913002
added NOT IN operator, added keywords NOT, AND, OR
2014-09-14 01:34:58 +02:00
Jan Steemann
87afcf5e8d
the great rename
2014-09-13 00:10:11 +02:00
Jan Steemann
76c1da4e9c
added test for remove-redundant-calculations
2014-09-12 16:58:01 +02:00
Jan Steemann
f57312baf0
pass AST to expression
2014-09-12 15:40:17 +02:00
Jan Steemann
6552490cbe
Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
...
Conflicts:
arangod/Aql/ExecutionNode.cpp
arangod/Aql/ExecutionNode.h
arangod/Aql/ExecutionPlan.cpp
arangod/Aql/OptimizerRules.cpp
2014-09-12 15:17:50 +02:00
Jan Steemann
a5c52998e8
remove redundant calculations
2014-09-12 15:10:48 +02:00
Willi Goesgens
4df0c84f43
only add the Json-Expression to the Exception if we're compiled in maintainer mode.
2014-09-12 14:36:01 +02:00
Willi Goesgens
36b7ed81a0
Enrich expressions with more information, by catching them, enhancing and re-throwing them.
2014-09-12 13:57:48 +02:00
Jan Steemann
71600f89b7
use RANGE AqlValue type
2014-09-11 11:56:40 +02:00
Max Neunhoeffer
b88bceda00
Fix memleaks.
2014-09-05 18:20:48 +02:00
Max Neunhoeffer
6f22f5529a
Fix memory leak, AqlValues must be destroyed explicitly.
2014-09-02 15:19:21 +02:00
Jan Steemann
a3d2d0e3f1
renamed file
2014-08-29 17:09:07 +02:00
Jan Steemann
694d64da3c
do not optimize away non-deterministic functions
2014-08-28 15:34:06 +02:00
Jan Steemann
2eb38c9657
remove-redundant-sorts, initial
2014-08-28 12:39:28 +02:00
Jan Steemann
b9024aeaeb
basic C++ implementations for dedicated AQL functions
2014-08-28 01:24:42 +02:00
Jan Steemann
6d0dfcdeba
changed ctor
2014-08-28 00:27:24 +02:00
Willi Goesgens
da6bac560d
SortIndex optimizer: clean up namingschemes, add documentation.
2014-08-27 16:09:25 +02:00
Willi Goesgens
5e75ec8bb5
Expression:
...
- add function isSimpleAccessReference() to check whether it is a coll.attr.attr
- add function getAccessNRef() to retrieve pair("attr.attr", "coll"),
SortIndex optimizer:
- use the new functionality to get better readable code.
rename indexes -> indices
2014-08-26 17:26:46 +02:00
Jan Steemann
3fe8831a03
fixed optimizer bug due to duplicate variable representation
2014-08-20 14:18:33 +02:00
Jan Steemann
52566a2975
optimizations for list expressions
2014-08-20 11:19:28 +02:00
Jan Steemann
99ce138c12
fixed creation of subqueries from JSON input
2014-08-19 18:51:11 +02:00
Willi Goesgens
1a6487ab14
Json de/serialization
2014-08-19 16:09:37 +02:00
Jan Steemann
631a73d9cb
moved analyzeExpression() call into constructor
2014-08-15 13:14:45 +02:00
Jan Steemann
9306105447
REMOVE
2014-08-15 12:44:35 +02:00
Jan Steemann
773c29cecf
further work on RemoveNode
2014-08-15 12:20:17 +02:00
Jan Steemann
655d7759bf
added canThrow() for Expression
2014-08-14 20:20:59 +02:00
Willi Goesgens
004d9bdbbb
Implement Simple Expression evaluation for Arrays.
2014-08-13 18:28:22 +02:00
Jan Steemann
8f9591ca1e
properly stringify _from and _to attributes using CollectionNameResolver
2014-08-13 15:59:56 +02:00
Jan Steemann
ea418088c5
fixed simple expressions
2014-08-13 15:39:56 +02:00
Jan Steemann
69f99324f2
added simple expressions
2014-08-13 14:22:14 +02:00
Jan Steemann
562054134e
prevent double-free
2014-08-11 15:34:11 +02:00
Jan Steemann
24f1f979d0
fixed jsonification of values
2014-08-11 14:54:14 +02:00
Jan Steemann
af1ecf44a4
GRAPH_TRAVERSAL_TREE
2014-08-11 14:48:58 +02:00
Jan Steemann
1b14aa3779
moved AqlValue to its own file
2014-08-08 19:46:20 +02:00
Max Neunhoeffer
96d8dcc054
Major cleanup, not yet working.
2014-08-05 12:29:36 +02:00
Jan Steemann
888e3ff7e7
unified signature
2014-08-01 15:00:12 +02:00
Jan Steemann
0d7ca46b45
added variables() method
2014-08-01 14:37:29 +02:00
Jan Steemann
91ac7ab74a
Merge branch 'aql2' of https://github.com/triAGENS/ArangoDB into aql2
...
Conflicts:
arangod/Aql/Types.h
2014-07-31 17:18:23 +02:00
Jan Steemann
d240314cfe
code generation for V8 expressions
2014-07-31 17:13:38 +02:00
Jan Steemann
d15771854d
pass executor to expression
2014-07-31 15:20:47 +02:00
Jan Steemann
65386d8529
added class Expression
2014-07-31 15:12:12 +02:00