summaryrefslogtreecommitdiffstats
path: root/modules/brotli/enc/static_dict.h
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@wolfbeast.com>2019-11-14 09:07:29 +0100
committerwolfbeast <mcwerewolf@wolfbeast.com>2019-11-14 09:07:29 +0100
commit56de283899bc91f7110aba58a3ca174c10852683 (patch)
tree779e6501bbbe4f015509c423ab44f2f40ea97cc8 /modules/brotli/enc/static_dict.h
parentce0dd36a78814c59950fde6c19413c1f7ea85ee1 (diff)
downloadUXP-56de283899bc91f7110aba58a3ca174c10852683.tar
UXP-56de283899bc91f7110aba58a3ca174c10852683.tar.gz
UXP-56de283899bc91f7110aba58a3ca174c10852683.tar.lz
UXP-56de283899bc91f7110aba58a3ca174c10852683.tar.xz
UXP-56de283899bc91f7110aba58a3ca174c10852683.zip
Issue #1288 - Part 1a: Update brotli to 1.0.7
This also reorganizes the exports in the build system to use `brotli/` as include directory.
Diffstat (limited to 'modules/brotli/enc/static_dict.h')
-rw-r--r--modules/brotli/enc/static_dict.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/modules/brotli/enc/static_dict.h b/modules/brotli/enc/static_dict.h
new file mode 100644
index 000000000..6b5d4eb0c
--- /dev/null
+++ b/modules/brotli/enc/static_dict.h
@@ -0,0 +1,40 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Class to model the static dictionary. */
+
+#ifndef BROTLI_ENC_STATIC_DICT_H_
+#define BROTLI_ENC_STATIC_DICT_H_
+
+#include "../common/dictionary.h"
+#include "../common/platform.h"
+#include <brotli/types.h>
+#include "./encoder_dict.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+#define BROTLI_MAX_STATIC_DICTIONARY_MATCH_LEN 37
+static const uint32_t kInvalidMatch = 0xFFFFFFF;
+
+/* Matches data against static dictionary words, and for each length l,
+ for which a match is found, updates matches[l] to be the minimum possible
+ (distance << 5) + len_code.
+ Returns 1 if matches have been found, otherwise 0.
+ Prerequisites:
+ matches array is at least BROTLI_MAX_STATIC_DICTIONARY_MATCH_LEN + 1 long
+ all elements are initialized to kInvalidMatch */
+BROTLI_INTERNAL BROTLI_BOOL BrotliFindAllStaticDictionaryMatches(
+ const BrotliEncoderDictionary* dictionary,
+ const uint8_t* data, size_t min_length, size_t max_length,
+ uint32_t* matches);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_STATIC_DICT_H_ */