Jack Conradson
f055ad641a
Made def variable casting consistent with invokedynamic rules.
2016-05-17 13:16:49 -07:00
Robert Muir
fa5f099486
make semicolons only optional at the end
2016-05-17 10:55:40 -04:00
Robert Muir
92339c4763
painless: add method overloading based on arity
...
Closes #18385
Squashed commit of the following:
commit b2819df4d392d69b86e5c96d358eb03424e67e02
Author: Robert Muir <rmuir@apache.org>
Date: Tue May 17 09:15:47 2016 -0400
add note about tuple
commit 85fcac6a0d0674da24535121eab23e2c407d683f
Author: Robert Muir <rmuir@apache.org>
Date: Mon May 16 23:39:25 2016 -0400
painless: add method overloading based on arity
2016-05-17 09:17:43 -04:00
Uwe Schindler
75f27df376
painless: Refactor WriterUtils to extends ASM GeneratorAdapter as "MethodWriter" for easy usage (and more coming later)
2016-05-17 02:25:05 +02:00
Jack Conradson
3fd3d367ef
Moved ADefLink to be a marker interface instead.
2016-05-16 15:48:29 -07:00
Jack Conradson
3f23186712
Merge branch 'master' into types
2016-05-16 14:22:59 -07:00
Jack Conradson
95a1b5b2a3
Fixed a casting bug in Painless.
2016-05-16 14:18:05 -07:00
Robert Muir
e69305ae21
Merge pull request #18372 from rmuir/painless_whitelist_expansion
...
painless whitelist expansion
2016-05-16 17:08:49 -04:00
Robert Muir
8d4c1befe5
Merge pull request #18364 from rmuir/nukeRunAsFloat
...
Remove LeafSearchScript.runAsFloat(): Nothing calls it.
2016-05-16 17:08:25 -04:00
Jack Conradson
1d394868d4
Merge branch 'master' into types
2016-05-16 12:43:24 -07:00
Jack Conradson
43344eee82
Add more def tests including checking bytecode for specific
...
optimizations.
2016-05-16 12:42:25 -07:00
Jack Conradson
f664fa5f33
Merge pull request #18350 from uschindler/painless_isAssignableFrom
...
Use isAssignableFrom instead of relying on ClassCastException
2016-05-16 12:41:09 -07:00
Jack Conradson
a2c2628a78
Merge pull request #18359 from uschindler/painless_removeStoreBoxing
...
Remove boxing when loading and storing values in "def" fields/arrays, remove boxing onsimple method calls of "def" methods
2016-05-16 12:11:37 -07:00
Uwe Schindler
d6cbbdeb98
painless: Some reformatting in EChain to make it clear if "this" or inner "expression" is affected
2016-05-16 21:04:03 +02:00
Uwe Schindler
b05ac87a5d
painless: Add Jack's test
2016-05-16 20:37:51 +02:00
Uwe Schindler
3a5ef68ad0
painless: Fix issue with dup and cast
2016-05-16 20:31:27 +02:00
Robert Muir
2fc7ca46e1
expand whitelist for basic types
2016-05-16 09:56:29 -04:00
Uwe Schindler
07e4f416e6
painless: Small cleanup of Debugger class to use StringWriter
2016-05-16 15:52:14 +02:00
Robert Muir
8edf213492
Remove LeafSearchScript.runAsFloat(): Nothing calls it.
2016-05-15 22:59:28 -04:00
Uwe Schindler
65aca4f71c
painless: make compound statement like a[1]++ work with def. There was also a bug with the size of LDefArray: fixed
2016-05-15 23:00:32 +02:00
Uwe Schindler
d221cd14d2
painless: Also remove boxing for reads and method calls
2016-05-15 19:49:25 +02:00
Uwe Schindler
604bcd9320
painless: Make field stores not box; use GeneratorAdapter.invokeDynmaic for consistency with other method calls
2016-05-15 18:31:53 +02:00
Uwe Schindler
8195ef9e7a
painless: Transform more try-catch-ClassCastException to isAssignableFrom
2016-05-15 01:06:29 +02:00
Uwe Schindler
7211017813
painless: Some cleanups
2016-05-14 17:23:29 +02:00
Uwe Schindler
c78bf8c867
painless: Use isAssignableFrom instead of relying on ClassCastException
2016-05-14 16:04:18 +02:00
Uwe Schindler
c8bd521ed3
painless: restore accidentally removed test
2016-05-14 12:00:30 +02:00
Uwe Schindler
ba9dae820a
Add test for wrong array index
2016-05-13 23:22:41 +02:00
Uwe Schindler
1a76329d89
Take return type from "after" field.
2016-05-13 23:17:22 +02:00
Uwe Schindler
1b10a14e8d
painless: build descriptor of array and field load/store in code; fix array index to adapt type not DEF
2016-05-13 23:04:04 +02:00
Robert Muir
2028691e66
painless: improve exception stacktraces
...
closes #18319
2016-05-13 15:40:45 -04:00
Uwe Schindler
9731d5d314
painless: Rename the dynamic call site factory to DefBootstrap and make the inner class very short (PIC = Polymorphic Inline Cache)
2016-05-13 19:58:05 +02:00
Lee Hinman
9bcdafedda
Allow only a single extension for a scripting engine
...
Previously multiple extensions could be provided, however, this can lead
to confusion with on-disk scripts (ie, "foo.js" and "foo.javascript")
having different content. Only a single extension is now supported.
The only language currently supporting multiple extensions was the
Javascript engine ("js" and "javascript"). It now only supports the
`.js` extension.
Relates to #10598
2016-05-13 09:54:31 -06:00
Lee Hinman
efff3918d8
Remove support for mulitple languages per scripting engine
2016-05-13 09:24:31 -06:00
Lee Hinman
a4060f7436
Remove vestiges of script engine sandboxing
...
This removes all the mentions of the sandbox from the script engine
services and permissions model. This means that the following settings
are no longer supported:
```yaml
script.inline: sandbox
script.stored: sandbox
```
Instead, only a `true` or `false` value can be specified.
Since this would otherwise break the default-allow parameter for
languages like expressions, painless, and mustache, all script engines
have been updated to have individual settings, for instance:
```yaml
script.engine.groovy.inline: true
```
Would enable all inline scripts for groovy. (they can still be
overridden on a per-operation basis).
Expressions, Painless, and Mustache all default to `true` for inline,
file, and stored scripts to preserve the old scripting behavior.
Resolves #17114
2016-05-13 09:24:31 -06:00
Uwe Schindler
a1d0fb5008
painless: cleanup of DynamicCallSite to have all implementation encapsulated in inner class, outer class only has bootstrap method
2016-05-13 15:50:55 +02:00
Jack Conradson
2e25837deb
Made line number available in painless nodes for debugging.
2016-05-12 10:32:06 -07:00
Jack Conradson
28164ccf2e
Decouple the ANTLR AST from Painless.
...
Closes #18286
2016-05-12 00:46:48 -07:00
Robert Muir
113e239e0f
Merge pull request #18288 from rmuir/painless_debug
...
painless: add debugging tool to tests
2016-05-12 01:16:32 -04:00
Jack Conradson
8871fddba7
Merge pull request #18282 from jdconrad/longs
...
Long priority over Float
2016-05-11 21:08:28 -07:00
Robert Muir
930a215b5c
add debugger
2016-05-11 23:56:19 -04:00
Robert Muir
25dd64250b
painless: remove input, support params instead
2016-05-11 21:32:10 -04:00
Robert Muir
c5532d3df0
add a rest test for this that seems to work, fix the documentation. thanks @s1monw
2016-05-11 16:07:08 -04:00
Robert Muir
6b4e47bf96
this makes aggregations per-document _value fast (bypass hash put, hash get, etc) for painless.
...
but i have no clue how to test it, it seems this feature never worked via REST?
Should we drop the feature instead?
2016-05-11 15:39:00 -04:00
Jack Conradson
20af482dd7
Removed extra branches. Only check for long first where we already know the
...
second type.
2016-05-11 10:22:40 -07:00
Jack Conradson
2764b47d22
Give long priority over float in Def math calcs. Promotion of types
...
still works correclty.
2016-05-11 09:32:30 -07:00
Robert Muir
d790c76636
painless: _score as double, not float
2016-05-11 11:19:18 -04:00
Robert Muir
7689a1af28
Add 'ctx' keyword to painless.
2016-05-11 02:31:19 -04:00
Jack Conradson
d8b373cac6
Fixed an issue related to bracket shortcuts.
2016-05-10 23:11:13 -07:00
Robert Muir
632bb4c720
add reserved word tests for 'doc', too
2016-05-11 00:17:19 -04:00
Robert Muir
389ef462c4
special access to doc
2016-05-10 23:43:57 -04:00