1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
|
--!A cross-platform build utility based on Lua
--
-- Licensed under the Apache License, Version 2.0 (the "License");
-- you may not use this file except in compliance with the License.
-- You may obtain a copy of the License at
--
-- http://www.apache.org/licenses/LICENSE-2.0
--
-- Unless required by applicable law or agreed to in writing, software
-- distributed under the License is distributed on an "AS IS" BASIS,
-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-- See the License for the specific language governing permissions and
-- limitations under the License.
--
-- Copyright (C) 2015-present, Xmake Open Source Community.
--
-- @author ruki
-- @file hash.lua
--
-- load modules
local hash = require("base/hash")
local raise = require("sandbox/modules/raise")
-- define module
local sandbox_hash = sandbox_hash or {}
-- generate a new uuid
function sandbox_hash.uuid(str)
local uuid = hash.uuid(str)
if not uuid then
raise("cannot generate uuid %s", str)
end
return uuid
end
-- generate a new uuid v4
function sandbox_hash.uuid4(str)
local uuid = hash.uuid4(str)
if not uuid then
raise("cannot generate uuid4 %s", str)
end
return uuid
end
-- generate sha1 from the given file or data
function sandbox_hash.sha1(file_or_data)
local sha1, errors = hash.sha1(file_or_data)
if not sha1 then
raise("cannot generate sha1, %s", errors or "unknown errors")
end
return sha1
end
-- generate sha256 from the given file or data
function sandbox_hash.sha256(file_or_data)
local sha256, errors = hash.sha256(file_or_data)
if not sha256 then
raise("cannot generate sha256, %s", errors or "unknown errors")
end
return sha256
end
-- generate md5 from the given file or data
function sandbox_hash.md5(file_or_data)
local md5, errors = hash.md5(file_or_data)
if not md5 then
raise("cannot generate md5, %s", errors or "unknown errors")
end
return md5
end
-- generate xxhash32 from the given file or data
function sandbox_hash.xxhash32(file_or_data)
local result, errors = hash.xxhash32(file_or_data)
if not result then
raise("cannot generate xxhash32, %s", errors or "unknown errors")
end
return result
end
-- generate xxhash64 from the given file or data
function sandbox_hash.xxhash64(file_or_data)
local result, errors = hash.xxhash64(file_or_data)
if not result then
raise("cannot generate xxhash64, %s", errors or "unknown errors")
end
return result
end
-- generate xxhash128 from the given file or data
function sandbox_hash.xxhash128(file_or_data)
local result, errors = hash.xxhash128(file_or_data)
if not result then
raise("cannot generate xxhash128, %s", errors or "unknown errors")
end
return result
end
-- generate hash32 from string
function sandbox_hash.strhash32(str)
local result, errors = hash.strhash32(str)
if not result then
raise("cannot generate hash32 for %s, %s", str, errors or "unknown errors")
end
return result
end
-- generate hash64 from string
function sandbox_hash.strhash64(str)
local result, errors = hash.strhash64(str)
if not result then
raise("cannot generate hash32 for %s, %s", str, errors or "unknown errors")
end
return result
end
-- generate hash128 from string
function sandbox_hash.strhash128(str)
local result, errors = hash.strhash128(str)
if not result then
raise("cannot generate hash128 for %s, %s", str, errors or "unknown errors")
end
return result
end
-- generate random32
function sandbox_hash.rand32()
local result, errors = hash.rand32()
if not result then
raise("cannot generate random32, %s", errors or "unknown errors")
end
return result
end
-- generate random64
function sandbox_hash.rand64()
local result, errors = hash.rand64()
if not result then
raise("cannot generate random64, %s", errors or "unknown errors")
end
return result
end
-- generate random128
function sandbox_hash.rand128()
local result, errors = hash.rand128()
if not result then
raise("cannot generate random128, %s", errors or "unknown errors")
end
return result
end
-- return module
return sandbox_hash
|