adjust recursion breath and depth
reduce key set to improve collision ratio
This commit is contained in:
parent
276e91b946
commit
dde7223537
|
|
@ -573,8 +573,9 @@ function _createExpression(recurmax, noComma, stmtDepth, canThrow) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function createArrayLiteral(recurmax, noComma, stmtDepth, canThrow) {
|
function createArrayLiteral(recurmax, noComma, stmtDepth, canThrow) {
|
||||||
|
recurmax--;
|
||||||
var arr = "[";
|
var arr = "[";
|
||||||
for (var i = 0, N = rng(4); i <= N; ++i) {
|
for (var i = 0, N = rng(5); i <= N; ++i) {
|
||||||
// in rare cases produce an array hole element
|
// in rare cases produce an array hole element
|
||||||
var element = rng(20) ? createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) : "";
|
var element = rng(20) ? createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) : "";
|
||||||
arr += element + ", ";
|
arr += element + ", ";
|
||||||
|
|
@ -585,11 +586,9 @@ function createArrayLiteral(recurmax, noComma, stmtDepth, canThrow) {
|
||||||
var SAFE_KEYS = [
|
var SAFE_KEYS = [
|
||||||
"length",
|
"length",
|
||||||
"foo",
|
"foo",
|
||||||
"bar",
|
|
||||||
"a",
|
"a",
|
||||||
"b",
|
"b",
|
||||||
"c",
|
"c",
|
||||||
"x",
|
|
||||||
"undefined",
|
"undefined",
|
||||||
"null",
|
"null",
|
||||||
"NaN",
|
"NaN",
|
||||||
|
|
@ -599,19 +598,17 @@ var SAFE_KEYS = [
|
||||||
];
|
];
|
||||||
var KEYS = [
|
var KEYS = [
|
||||||
"''",
|
"''",
|
||||||
"' '",
|
'"\t"',
|
||||||
"'-2'",
|
'"-2"',
|
||||||
"'-1'",
|
|
||||||
"0",
|
"0",
|
||||||
"1",
|
"1.5",
|
||||||
"2.5",
|
|
||||||
"3",
|
"3",
|
||||||
"4",
|
|
||||||
].concat(SAFE_KEYS);
|
].concat(SAFE_KEYS);
|
||||||
|
|
||||||
function createObjectLiteral(recurmax, noComma, stmtDepth, canThrow) {
|
function createObjectLiteral(recurmax, noComma, stmtDepth, canThrow) {
|
||||||
|
recurmax--;
|
||||||
var obj = "({";
|
var obj = "({";
|
||||||
for (var i = 0, N = rng(3); i <= N; ++i) {
|
for (var i = 0, N = rng(5); i <= N; ++i) {
|
||||||
var key = KEYS[rng(KEYS.length)];
|
var key = KEYS[rng(KEYS.length)];
|
||||||
obj += key + ":(" + createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) + "), ";
|
obj += key + ":(" + createExpression(recurmax, COMMA_OK, stmtDepth, canThrow) + "), ";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user