BadScript 2
Loading...
Searching...
No Matches
BadDeflateApi.cs
Go to the documentation of this file.
1
using
System.IO.Compression;
2
using
System.Text;
3
4
using
BadScript2.Runtime
;
5
using
BadScript2.Runtime.Objects
;
6
using
BadScript2.Runtime.Objects.Native
;
7
8
namespace
BadScript2.Interop.Compression
;
9
10
[BadInteropApi(
"Deflate"
)]
11
internal
partial class
BadDeflateApi
12
{
18
[BadMethod(description:
"Compresses the given string using the Deflate Algorithm"
)]
19
[
return
: BadReturn(
"Compressed Array of bytes"
)]
20
private
static
BadArray
Compress
([BadParameter(description:
"String to Compress"
)] string obj)
21
{
22
MemoryStream ms =
new
MemoryStream(Encoding.UTF8.GetBytes(obj));
23
MemoryStream compressed =
new
MemoryStream();
24
using
DeflateStream ds =
new
DeflateStream(compressed, CompressionMode.Compress);
25
ms.CopyTo(ds);
26
ds.Close();
27
28
return
new
BadArray
(compressed.ToArray().Select(x => (
BadObject
)
new
BadNumber
(x)).ToList());
29
}
30
37
[BadMethod(description:
"Inflates the given array of bytes using the Deflate Algorithm"
)]
38
[return: BadReturn(
"Decompressed String"
)]
39
private static string
Decompress
(
BadExecutionContext
ctx, [BadParameter(description:
"Bytes to Decompress"
)] byte[] obj)
40
{
41
MemoryStream ms =
new
MemoryStream(obj);
42
MemoryStream decompressed =
new
MemoryStream();
43
using
DeflateStream ds =
new
DeflateStream(ms, CompressionMode.Decompress);
44
ds.CopyTo(decompressed);
45
ds.Close();
46
47
return
Encoding.UTF8.GetString(decompressed.ToArray());
48
}
49
}
BadScript2.Interop.Compression.BadDeflateApi
Definition
BadDeflateApi.cs:12
BadScript2.Interop.Compression.BadDeflateApi.Compress
static BadArray Compress([BadParameter(description:"String to Compress")] string obj)
Deflates the given string.
Definition
BadDeflateApi.cs:20
BadScript2.Interop.Compression.BadDeflateApi.Decompress
static string Decompress(BadExecutionContext ctx, [BadParameter(description:"Bytes to Decompress")] byte[] obj)
Inflate the given array.
Definition
BadDeflateApi.cs:39
BadScript2.Runtime.BadExecutionContext
The Execution Context. Every execution of a script needs a context the script is running in....
Definition
BadExecutionContext.cs:16
BadScript2.Runtime.Objects.BadArray
Implements a Dynamic List/Array for the BadScript Language.
Definition
BadArray.cs:17
BadScript2.Runtime.Objects.BadObject
The Base Class for all BadScript Objects.
Definition
BadObject.cs:14
BadScript2.Runtime.Objects.Native.BadNumber
Implements a Native Number.
Definition
BadNumber.cs:11
BadScript2.Interop.Compression
Contains Compression Extensions and APIs for the BadScript2 Runtime.
Definition
BadBase64Api.cs:3
BadScript2.Runtime.Objects.Native
Contains the Native Runtime Objects.
Definition
BadBoolean.cs:6
BadScript2.Runtime.Objects
Contains the Runtime Objects.
Definition
BadArray.cs:10
BadScript2.Runtime
Contains the Runtime Implementation.
Definition
BadExecutionContext.cs:8
src
BadScript2.Interop
BadScript2.Interop.Compression
BadDeflateApi.cs
Generated by
1.9.8