| 1 |
|
%% Copyright (c) 2023 Peter Morgan <peter.james.morgan@gmail.com> |
| 2 |
|
%% |
| 3 |
|
%% Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 |
|
%% you may not use this file except in compliance with the License. |
| 5 |
|
%% You may obtain a copy of the License at |
| 6 |
|
%% |
| 7 |
|
%% http://www.apache.org/licenses/LICENSE-2.0 |
| 8 |
|
%% |
| 9 |
|
%% Unless required by applicable law or agreed to in writing, software |
| 10 |
|
%% distributed under the License is distributed on an "AS IS" BASIS, |
| 11 |
|
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 12 |
|
%% See the License for the specific language governing permissions and |
| 13 |
|
%% limitations under the License. |
| 14 |
|
|
| 15 |
|
|
| 16 |
|
%% @doc Parser combinators that return numbers from big endian bytes. |
| 17 |
|
|
| 18 |
|
-module(scran_number_be). |
| 19 |
|
|
| 20 |
|
|
| 21 |
|
-define(ENDIAN, big). |
| 22 |
|
-export([f/1]). |
| 23 |
|
-export([f104/0]). |
| 24 |
|
-export([f112/0]). |
| 25 |
|
-export([f120/0]). |
| 26 |
|
-export([f128/0]). |
| 27 |
|
-export([f16/0]). |
| 28 |
|
-export([f24/0]). |
| 29 |
|
-export([f32/0]). |
| 30 |
|
-export([f40/0]). |
| 31 |
|
-export([f48/0]). |
| 32 |
|
-export([f56/0]). |
| 33 |
|
-export([f64/0]). |
| 34 |
|
-export([f72/0]). |
| 35 |
|
-export([f8/0]). |
| 36 |
|
-export([f80/0]). |
| 37 |
|
-export([f88/0]). |
| 38 |
|
-export([f96/0]). |
| 39 |
|
-export([i/1]). |
| 40 |
|
-export([i104/0]). |
| 41 |
|
-export([i112/0]). |
| 42 |
|
-export([i120/0]). |
| 43 |
|
-export([i128/0]). |
| 44 |
|
-export([i16/0]). |
| 45 |
|
-export([i24/0]). |
| 46 |
|
-export([i32/0]). |
| 47 |
|
-export([i40/0]). |
| 48 |
|
-export([i48/0]). |
| 49 |
|
-export([i56/0]). |
| 50 |
|
-export([i64/0]). |
| 51 |
|
-export([i72/0]). |
| 52 |
|
-export([i8/0]). |
| 53 |
|
-export([i80/0]). |
| 54 |
|
-export([i88/0]). |
| 55 |
|
-export([i96/0]). |
| 56 |
|
-export([u/1]). |
| 57 |
|
-export([u104/0]). |
| 58 |
|
-export([u112/0]). |
| 59 |
|
-export([u120/0]). |
| 60 |
|
-export([u128/0]). |
| 61 |
|
-export([u16/0]). |
| 62 |
|
-export([u24/0]). |
| 63 |
|
-export([u32/0]). |
| 64 |
|
-export([u40/0]). |
| 65 |
|
-export([u48/0]). |
| 66 |
|
-export([u56/0]). |
| 67 |
|
-export([u64/0]). |
| 68 |
|
-export([u72/0]). |
| 69 |
|
-export([u8/0]). |
| 70 |
|
-export([u80/0]). |
| 71 |
|
-export([u88/0]). |
| 72 |
|
-export([u96/0]). |
| 73 |
|
|
| 74 |
|
|
| 75 |
|
-spec i(scran_number:bit_size()) -> scran_number:iparser(). |
| 76 |
|
|
| 77 |
|
i(Size) -> |
| 78 |
256 |
scran_number:i(?ENDIAN, Size). |
| 79 |
|
|
| 80 |
|
|
| 81 |
|
-spec i8() -> scran_number:iparser(). |
| 82 |
|
-spec i16() -> scran_number:iparser(). |
| 83 |
|
-spec i24() -> scran_number:iparser(). |
| 84 |
|
-spec i32() -> scran_number:iparser(). |
| 85 |
|
-spec i40() -> scran_number:iparser(). |
| 86 |
|
-spec i48() -> scran_number:iparser(). |
| 87 |
|
-spec i56() -> scran_number:iparser(). |
| 88 |
|
-spec i64() -> scran_number:iparser(). |
| 89 |
|
-spec i72() -> scran_number:iparser(). |
| 90 |
|
-spec i80() -> scran_number:iparser(). |
| 91 |
|
-spec i88() -> scran_number:iparser(). |
| 92 |
|
-spec i96() -> scran_number:iparser(). |
| 93 |
|
-spec i104() -> scran_number:iparser(). |
| 94 |
|
-spec i112() -> scran_number:iparser(). |
| 95 |
|
-spec i120() -> scran_number:iparser(). |
| 96 |
|
-spec i128() -> scran_number:iparser(). |
| 97 |
|
|
| 98 |
|
|
| 99 |
8 |
i8() -> i(8). |
| 100 |
8 |
i16() -> i(16). |
| 101 |
8 |
i24() -> i(24). |
| 102 |
8 |
i32() -> i(32). |
| 103 |
8 |
i40() -> i(40). |
| 104 |
8 |
i48() -> i(48). |
| 105 |
8 |
i56() -> i(56). |
| 106 |
8 |
i64() -> i(64). |
| 107 |
8 |
i72() -> i(72). |
| 108 |
8 |
i80() -> i(80). |
| 109 |
8 |
i88() -> i(88). |
| 110 |
8 |
i96() -> i(96). |
| 111 |
8 |
i104() -> i(104). |
| 112 |
8 |
i112() -> i(112). |
| 113 |
8 |
i120() -> i(120). |
| 114 |
8 |
i128() -> i(128). |
| 115 |
|
|
| 116 |
|
|
| 117 |
|
-spec u8() -> scran_number:uparser(). |
| 118 |
|
-spec u16() -> scran_number:uparser(). |
| 119 |
|
-spec u24() -> scran_number:uparser(). |
| 120 |
|
-spec u32() -> scran_number:uparser(). |
| 121 |
|
-spec u40() -> scran_number:uparser(). |
| 122 |
|
-spec u48() -> scran_number:uparser(). |
| 123 |
|
-spec u56() -> scran_number:uparser(). |
| 124 |
|
-spec u64() -> scran_number:uparser(). |
| 125 |
|
-spec u72() -> scran_number:uparser(). |
| 126 |
|
-spec u80() -> scran_number:uparser(). |
| 127 |
|
-spec u88() -> scran_number:uparser(). |
| 128 |
|
-spec u96() -> scran_number:uparser(). |
| 129 |
|
-spec u104() -> scran_number:uparser(). |
| 130 |
|
-spec u112() -> scran_number:uparser(). |
| 131 |
|
-spec u120() -> scran_number:uparser(). |
| 132 |
|
-spec u128() -> scran_number:uparser(). |
| 133 |
|
|
| 134 |
|
|
| 135 |
|
-spec u(scran_number:bit_size()) -> scran_number:uparser(). |
| 136 |
|
|
| 137 |
|
u(Size) -> |
| 138 |
220 |
scran_number:u(?ENDIAN, Size). |
| 139 |
|
|
| 140 |
|
|
| 141 |
6 |
u8() -> u(8). |
| 142 |
13 |
u16() -> u(16). |
| 143 |
6 |
u24() -> u(24). |
| 144 |
6 |
u32() -> u(32). |
| 145 |
6 |
u40() -> u(40). |
| 146 |
6 |
u48() -> u(48). |
| 147 |
6 |
u56() -> u(56). |
| 148 |
6 |
u64() -> u(64). |
| 149 |
6 |
u72() -> u(72). |
| 150 |
6 |
u80() -> u(80). |
| 151 |
6 |
u88() -> u(88). |
| 152 |
6 |
u96() -> u(96). |
| 153 |
6 |
u104() -> u(104). |
| 154 |
6 |
u112() -> u(112). |
| 155 |
6 |
u120() -> u(120). |
| 156 |
6 |
u128() -> u(128). |
| 157 |
|
|
| 158 |
|
|
| 159 |
|
-spec f(scran_number:bit_size()) -> scran_number:fparser(). |
| 160 |
|
|
| 161 |
|
f(Size) -> |
| 162 |
:-( |
scran_number:f(?ENDIAN, Size). |
| 163 |
|
|
| 164 |
|
-spec f8() -> scran_number:fparser(). |
| 165 |
|
-spec f16() -> scran_number:fparser(). |
| 166 |
|
-spec f24() -> scran_number:fparser(). |
| 167 |
|
-spec f32() -> scran_number:fparser(). |
| 168 |
|
-spec f40() -> scran_number:fparser(). |
| 169 |
|
-spec f48() -> scran_number:fparser(). |
| 170 |
|
-spec f56() -> scran_number:fparser(). |
| 171 |
|
-spec f64() -> scran_number:fparser(). |
| 172 |
|
-spec f72() -> scran_number:fparser(). |
| 173 |
|
-spec f80() -> scran_number:fparser(). |
| 174 |
|
-spec f88() -> scran_number:fparser(). |
| 175 |
|
-spec f96() -> scran_number:fparser(). |
| 176 |
|
-spec f104() -> scran_number:fparser(). |
| 177 |
|
-spec f112() -> scran_number:fparser(). |
| 178 |
|
-spec f120() -> scran_number:fparser(). |
| 179 |
|
-spec f128() -> scran_number:fparser(). |
| 180 |
|
|
| 181 |
|
|
| 182 |
:-( |
f8() -> f(8). |
| 183 |
:-( |
f16() -> f(16). |
| 184 |
:-( |
f24() -> f(24). |
| 185 |
:-( |
f32() -> f(32). |
| 186 |
:-( |
f40() -> f(40). |
| 187 |
:-( |
f48() -> f(48). |
| 188 |
:-( |
f56() -> f(56). |
| 189 |
:-( |
f64() -> f(64). |
| 190 |
:-( |
f72() -> f(72). |
| 191 |
:-( |
f80() -> f(80). |
| 192 |
:-( |
f88() -> f(88). |
| 193 |
:-( |
f96() -> f(96). |
| 194 |
:-( |
f104() -> f(104). |
| 195 |
:-( |
f112() -> f(112). |
| 196 |
:-( |
f120() -> f(120). |
| 197 |
:-( |
f128() -> f(128). |