null+****@clear*****
null+****@clear*****
2012年 8月 6日 (月) 11:52:22 JST
Kouhei Sutou 2012-08-06 11:52:22 +0900 (Mon, 06 Aug 2012) New Revision: bd3f1e3daca6c17b8bf5a7108eb806efb5ed431f https://github.com/groonga/gcs/commit/bd3f1e3daca6c17b8bf5a7108eb806efb5ed431f Log: bq: support OR Modified files: lib/bq-translator.js test/bq-translator.test.js Modified: lib/bq-translator.js (+6 -0) =================================================================== --- lib/bq-translator.js 2012-08-06 11:50:44 +0900 (2dff377) +++ lib/bq-translator.js 2012-08-06 11:52:22 +0900 (d39f765) @@ -240,6 +240,12 @@ BooleanQueryTranslator.prototype = { tokens.push("&&"); value = ""; } + } else if (character == "|") { + if (value.length > 0) { + tokens.push(this.translateExpressionValueStringKeyword(field, value)); + tokens.push("||"); + value = ""; + } } else if (character == "\\") { this.offset++; character = this.query[this.offset]; Modified: test/bq-translator.test.js (+4 -0) =================================================================== --- test/bq-translator.test.js 2012-08-06 11:50:44 +0900 (0a5ab37) +++ test/bq-translator.test.js 2012-08-06 11:52:22 +0900 (24dbe2c) @@ -113,6 +113,10 @@ suite('BoolanQueryTranslator', function() { "'keyword1+keyword2' 'other keyword'", "'keyword1+keyword2'".length, "field @ \"keyword1\" && field @ \"keyword2\""); + testExpression("value only: stirng: or", + "'keyword1|keyword2' 'other keyword'", + "'keyword1|keyword2'".length, + "field @ \"keyword1\" || field @ \"keyword2\""); testExpression("value only: stirng: phrase", "'\"keyword1 keyword2\"' 'other keyword'", "'\"keyword1 keyword2\"'".length, -------------- next part -------------- HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...Download