brotli 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,29 @@
1
+ /* Copyright 2013 Google Inc. All Rights Reserved.
2
+
3
+ Distributed under MIT license.
4
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
5
+ */
6
+
7
+ /* Collection of static dictionary words. */
8
+
9
+ #ifndef BROTLI_COMMON_DICTIONARY_H_
10
+ #define BROTLI_COMMON_DICTIONARY_H_
11
+
12
+ #include "./types.h"
13
+
14
+ #if defined(__cplusplus) || defined(c_plusplus)
15
+ extern "C" {
16
+ #endif
17
+
18
+ extern const uint8_t kBrotliDictionary[122784];
19
+ extern const uint32_t kBrotliDictionaryOffsetsByLength[25];
20
+ extern const uint8_t kBrotliDictionarySizeBitsByLength[25];
21
+
22
+ #define kBrotliMinDictionaryWordLength 4
23
+ #define kBrotliMaxDictionaryWordLength 24
24
+
25
+ #if defined(__cplusplus) || defined(c_plusplus)
26
+ } /* extern "C" */
27
+ #endif
28
+
29
+ #endif /* BROTLI_COMMON_DICTIONARY_H_ */
@@ -0,0 +1,107 @@
1
+ /* Copyright 2016 Google Inc. All Rights Reserved.
2
+
3
+ Distributed under MIT license.
4
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
5
+ */
6
+
7
+ /* Macros for compiler / platform specific features and build options. */
8
+
9
+ #ifndef BROTLI_COMMON_PORT_H_
10
+ #define BROTLI_COMMON_PORT_H_
11
+
12
+ /* Compatibility with non-clang compilers. */
13
+ #ifndef __has_builtin
14
+ #define __has_builtin(x) 0
15
+ #endif
16
+
17
+ #ifndef __has_attribute
18
+ #define __has_attribute(x) 0
19
+ #endif
20
+
21
+ #ifndef __has_feature
22
+ #define __has_feature(x) 0
23
+ #endif
24
+
25
+ #if defined(__GNUC__) && defined(__GNUC_MINOR__)
26
+ #define BROTLI_GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__)
27
+ #else
28
+ #define BROTLI_GCC_VERSION 0
29
+ #endif
30
+
31
+ #if defined(__ICC)
32
+ #define BROTLI_ICC_VERSION __ICC
33
+ #else
34
+ #define BROTLI_ICC_VERSION 0
35
+ #endif
36
+
37
+ #if defined(BROTLI_BUILD_MODERN_COMPILER)
38
+ #define BROTLI_MODERN_COMPILER 1
39
+ #elif BROTLI_GCC_VERSION > 300 || BROTLI_ICC_VERSION >= 1600
40
+ #define BROTLI_MODERN_COMPILER 1
41
+ #else
42
+ #define BROTLI_MODERN_COMPILER 0
43
+ #endif
44
+
45
+ /* Define "PREDICT_TRUE" and "PREDICT_FALSE" macros for capable compilers.
46
+
47
+ To apply compiler hint, enclose the branching condition into macros, like this:
48
+
49
+ if (PREDICT_TRUE(zero == 0)) {
50
+ // main execution path
51
+ } else {
52
+ // compiler should place this code outside of main execution path
53
+ }
54
+
55
+ OR:
56
+
57
+ if (PREDICT_FALSE(something_rare_or_unexpected_happens)) {
58
+ // compiler should place this code outside of main execution path
59
+ }
60
+
61
+ */
62
+ #if BROTLI_MODERN_COMPILER || __has_builtin(__builtin_expect)
63
+ #define PREDICT_TRUE(x) (__builtin_expect(!!(x), 1))
64
+ #define PREDICT_FALSE(x) (__builtin_expect(x, 0))
65
+ #else
66
+ #define PREDICT_FALSE(x) (x)
67
+ #define PREDICT_TRUE(x) (x)
68
+ #endif
69
+
70
+ #if BROTLI_MODERN_COMPILER || __has_attribute(always_inline)
71
+ #define ATTRIBUTE_ALWAYS_INLINE __attribute__ ((always_inline))
72
+ #else
73
+ #define ATTRIBUTE_ALWAYS_INLINE
74
+ #endif
75
+
76
+ #if defined(_WIN32) || defined(__CYGWIN__)
77
+ #define ATTRIBUTE_VISIBILITY_HIDDEN
78
+ #elif BROTLI_MODERN_COMPILER || __has_attribute(visibility)
79
+ #define ATTRIBUTE_VISIBILITY_HIDDEN __attribute__ ((visibility ("hidden")))
80
+ #else
81
+ #define ATTRIBUTE_VISIBILITY_HIDDEN
82
+ #endif
83
+
84
+ #ifndef BROTLI_INTERNAL
85
+ #define BROTLI_INTERNAL ATTRIBUTE_VISIBILITY_HIDDEN
86
+ #endif
87
+
88
+ #ifndef _MSC_VER
89
+ #if defined(__cplusplus) || !defined(__STRICT_ANSI__) || \
90
+ __STDC_VERSION__ >= 199901L
91
+ #define BROTLI_INLINE inline ATTRIBUTE_ALWAYS_INLINE
92
+ #else
93
+ #define BROTLI_INLINE
94
+ #endif
95
+ #else /* _MSC_VER */
96
+ #define BROTLI_INLINE __forceinline
97
+ #endif /* _MSC_VER */
98
+
99
+ #if BROTLI_MODERN_COMPILER || __has_attribute(noinline)
100
+ #define BROTLI_NOINLINE __attribute__((noinline))
101
+ #else
102
+ #define BROTLI_NOINLINE
103
+ #endif
104
+
105
+ #define BROTLI_UNUSED(X) (void)(X)
106
+
107
+ #endif /* BROTLI_COMMON_PORT_H_ */
@@ -0,0 +1,58 @@
1
+ /* Copyright 2013 Google Inc. All Rights Reserved.
2
+
3
+ Distributed under MIT license.
4
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
5
+ */
6
+
7
+ /* Common types */
8
+
9
+ #ifndef BROTLI_COMMON_TYPES_H_
10
+ #define BROTLI_COMMON_TYPES_H_
11
+
12
+ #include <stddef.h> /* for size_t */
13
+
14
+ #if defined(_MSC_VER) && (_MSC_VER < 1600)
15
+ typedef __int8 int8_t;
16
+ typedef unsigned __int8 uint8_t;
17
+ typedef __int16 int16_t;
18
+ typedef unsigned __int16 uint16_t;
19
+ typedef __int32 int32_t;
20
+ typedef unsigned __int32 uint32_t;
21
+ typedef unsigned __int64 uint64_t;
22
+ typedef __int64 int64_t;
23
+ #else
24
+ #include <stdint.h>
25
+ #endif /* defined(_MSC_VER) && (_MSC_VER < 1600) */
26
+
27
+ #if (!defined(_MSC_VER) || (_MSC_VER >= 1800)) && \
28
+ (defined(__cplusplus) || (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L))
29
+ #include <stdbool.h>
30
+ #define BROTLI_BOOL bool
31
+ #define BROTLI_TRUE true
32
+ #define BROTLI_FALSE false
33
+ #define TO_BROTLI_BOOL(X) (!!(X))
34
+ #else
35
+ typedef enum {
36
+ BROTLI_FALSE = 0,
37
+ BROTLI_TRUE = !BROTLI_FALSE
38
+ } BROTLI_BOOL;
39
+ #define TO_BROTLI_BOOL(X) (!!(X) ? BROTLI_TRUE : BROTLI_FALSE)
40
+ #endif
41
+
42
+ #define MAKE_UINT64_T(high, low) ((((uint64_t)(high)) << 32) | low)
43
+
44
+ #define BROTLI_UINT32_MAX (~((uint32_t)0))
45
+ #define BROTLI_SIZE_MAX (~((size_t)0))
46
+
47
+ /* Allocating function pointer. Function MUST return 0 in the case of failure.
48
+ Otherwise it MUST return a valid pointer to a memory region of at least
49
+ size length. Neither items nor size are allowed to be 0.
50
+ opaque argument is a pointer provided by client and could be used to bind
51
+ function to specific object (memory pool). */
52
+ typedef void* (*brotli_alloc_func)(void* opaque, size_t size);
53
+
54
+ /* Deallocating function pointer. Function SHOULD be no-op in the case the
55
+ address is 0. */
56
+ typedef void (*brotli_free_func)(void* opaque, void* address);
57
+
58
+ #endif /* BROTLI_COMMON_TYPES_H_ */
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: brotli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - miyucy
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-12-27 00:00:00.000000000 Z
11
+ date: 2016-12-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -105,7 +105,16 @@ files:
105
105
  - ext/brotli/extconf.rb
106
106
  - lib/brotli.rb
107
107
  - lib/brotli/version.rb
108
+ - smoke.sh
109
+ - spec/brotli_spec.rb
110
+ - spec/inflate_spec.rb
111
+ - spec/spec_helper.rb
108
112
  - vendor/brotli/LICENSE
113
+ - vendor/brotli/common/constants.h
114
+ - vendor/brotli/common/dictionary.c
115
+ - vendor/brotli/common/dictionary.h
116
+ - vendor/brotli/common/port.h
117
+ - vendor/brotli/common/types.h
109
118
  - vendor/brotli/dec/bit_reader.c
110
119
  - vendor/brotli/dec/bit_reader.h
111
120
  - vendor/brotli/dec/context.h
@@ -200,4 +209,7 @@ rubygems_version: 2.4.5
200
209
  signing_key:
201
210
  specification_version: 4
202
211
  summary: Brotli compressor/decompressor
203
- test_files: []
212
+ test_files:
213
+ - spec/brotli_spec.rb
214
+ - spec/inflate_spec.rb
215
+ - spec/spec_helper.rb