You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by ga...@apache.org on 2020/04/02 12:39:36 UTC

[couchdb] 08/18: Add couch_views_encoding max value

This is an automated email from the ASF dual-hosted git repository.

garren pushed a commit to branch fdb-mango-indexes
in repository https://gitbox.apache.org/repos/asf/couchdb.git

commit fd323c171e14771af2dfa889df3d99a60c01861d
Author: Garren Smith <ga...@gmail.com>
AuthorDate: Tue Mar 24 15:48:14 2020 +0200

    Add couch_views_encoding max value
    
    Adds a max value to use for encoding. This is useful when getting the
    max range when encoding startkey/endkeys.
---
 src/couch_views/src/couch_views_encoding.erl | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/couch_views/src/couch_views_encoding.erl b/src/couch_views/src/couch_views_encoding.erl
index ef5fed9..2f69db3 100644
--- a/src/couch_views/src/couch_views_encoding.erl
+++ b/src/couch_views/src/couch_views_encoding.erl
@@ -14,6 +14,7 @@
 
 
 -export([
+    max/0,
     encode/1,
     encode/2,
     decode/1
@@ -27,6 +28,11 @@
 -define(STRING, 4).
 -define(LIST, 5).
 -define(OBJECT, 6).
+-define(MAX, 255).
+
+
+max() ->
+    max_encoding_value.
 
 
 encode(X) ->
@@ -51,6 +57,9 @@ encode_int(false, _Type) ->
 encode_int(true, _Type) ->
     {?TRUE};
 
+encode_int(max_encoding_value, _Type) ->
+    {?MAX};
+
 encode_int(Num, key) when is_number(Num) ->
     {?NUMBER, float(Num)};
 
@@ -87,6 +96,9 @@ decode_int({?FALSE}) ->
 decode_int({?TRUE}) ->
     true;
 
+decode_int({?MAX}) ->
+    max_encoding_value;
+
 decode_int({?STRING, Bin}) ->
     Bin;