hoopagent 1.14.9.pre.beta1

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 87e49cdecf7e05081df17fde1dd0bcacdd3eec94d8781acdd059ca357e357cbf
4
+ data.tar.gz: 74096c3d2d3c2dce99658b75e6218e3c09658f743598bf6efeb270289bf71826
5
+ SHA512:
6
+ metadata.gz: 9a5c68c01c31babb997665ac09dcd4c4388b060a8a76d8cf13a342b267be23fa3acca90a3e1de861b77c024be88ca92e97136e8e382b981ce83a6c651b3af5cd
7
+ data.tar.gz: 21d4d410b4c26f5594b46cb8f5a4d1a2331c6051dcc9c544ba86bb85d266fe4f378675c111341b3184bc60886b232203b43b12d3686baf9a0a5d60636ff97e10
@@ -0,0 +1,82 @@
1
+ /* Code generated by cmd/cgo; DO NOT EDIT. */
2
+
3
+ /* package command-line-arguments */
4
+
5
+
6
+ #line 1 "cgo-builtin-export-prolog"
7
+
8
+ #include <stddef.h>
9
+
10
+ #ifndef GO_CGO_EXPORT_PROLOGUE_H
11
+ #define GO_CGO_EXPORT_PROLOGUE_H
12
+
13
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
14
+ typedef struct { const char *p; ptrdiff_t n; } _GoString_;
15
+ #endif
16
+
17
+ #endif
18
+
19
+ /* Start of preamble from import "C" comments. */
20
+
21
+
22
+
23
+
24
+ /* End of preamble from import "C" comments. */
25
+
26
+
27
+ /* Start of boilerplate cgo prologue. */
28
+ #line 1 "cgo-gcc-export-header-prolog"
29
+
30
+ #ifndef GO_CGO_PROLOGUE_H
31
+ #define GO_CGO_PROLOGUE_H
32
+
33
+ typedef signed char GoInt8;
34
+ typedef unsigned char GoUint8;
35
+ typedef short GoInt16;
36
+ typedef unsigned short GoUint16;
37
+ typedef int GoInt32;
38
+ typedef unsigned int GoUint32;
39
+ typedef long long GoInt64;
40
+ typedef unsigned long long GoUint64;
41
+ typedef GoInt64 GoInt;
42
+ typedef GoUint64 GoUint;
43
+ typedef size_t GoUintptr;
44
+ typedef float GoFloat32;
45
+ typedef double GoFloat64;
46
+ #ifdef _MSC_VER
47
+ #include <complex.h>
48
+ typedef _Fcomplex GoComplex64;
49
+ typedef _Dcomplex GoComplex128;
50
+ #else
51
+ typedef float _Complex GoComplex64;
52
+ typedef double _Complex GoComplex128;
53
+ #endif
54
+
55
+ /*
56
+ static assertion to make sure the file is being used on architecture
57
+ at least with matching size of GoInt.
58
+ */
59
+ typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 1:-1];
60
+
61
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
62
+ typedef _GoString_ GoString;
63
+ #endif
64
+ typedef void *GoMap;
65
+ typedef void *GoChan;
66
+ typedef struct { void *t; void *v; } GoInterface;
67
+ typedef struct { void *data; GoInt len; GoInt cap; } GoSlice;
68
+
69
+ #endif
70
+
71
+ /* End of boilerplate cgo prologue. */
72
+
73
+ #ifdef __cplusplus
74
+ extern "C" {
75
+ #endif
76
+
77
+ extern void __start_in_background();
78
+ extern void __start();
79
+
80
+ #ifdef __cplusplus
81
+ }
82
+ #endif
Binary file
@@ -0,0 +1,82 @@
1
+ /* Code generated by cmd/cgo; DO NOT EDIT. */
2
+
3
+ /* package command-line-arguments */
4
+
5
+
6
+ #line 1 "cgo-builtin-export-prolog"
7
+
8
+ #include <stddef.h>
9
+
10
+ #ifndef GO_CGO_EXPORT_PROLOGUE_H
11
+ #define GO_CGO_EXPORT_PROLOGUE_H
12
+
13
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
14
+ typedef struct { const char *p; ptrdiff_t n; } _GoString_;
15
+ #endif
16
+
17
+ #endif
18
+
19
+ /* Start of preamble from import "C" comments. */
20
+
21
+
22
+
23
+
24
+ /* End of preamble from import "C" comments. */
25
+
26
+
27
+ /* Start of boilerplate cgo prologue. */
28
+ #line 1 "cgo-gcc-export-header-prolog"
29
+
30
+ #ifndef GO_CGO_PROLOGUE_H
31
+ #define GO_CGO_PROLOGUE_H
32
+
33
+ typedef signed char GoInt8;
34
+ typedef unsigned char GoUint8;
35
+ typedef short GoInt16;
36
+ typedef unsigned short GoUint16;
37
+ typedef int GoInt32;
38
+ typedef unsigned int GoUint32;
39
+ typedef long long GoInt64;
40
+ typedef unsigned long long GoUint64;
41
+ typedef GoInt64 GoInt;
42
+ typedef GoUint64 GoUint;
43
+ typedef size_t GoUintptr;
44
+ typedef float GoFloat32;
45
+ typedef double GoFloat64;
46
+ #ifdef _MSC_VER
47
+ #include <complex.h>
48
+ typedef _Fcomplex GoComplex64;
49
+ typedef _Dcomplex GoComplex128;
50
+ #else
51
+ typedef float _Complex GoComplex64;
52
+ typedef double _Complex GoComplex128;
53
+ #endif
54
+
55
+ /*
56
+ static assertion to make sure the file is being used on architecture
57
+ at least with matching size of GoInt.
58
+ */
59
+ typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 1:-1];
60
+
61
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
62
+ typedef _GoString_ GoString;
63
+ #endif
64
+ typedef void *GoMap;
65
+ typedef void *GoChan;
66
+ typedef struct { void *t; void *v; } GoInterface;
67
+ typedef struct { void *data; GoInt len; GoInt cap; } GoSlice;
68
+
69
+ #endif
70
+
71
+ /* End of boilerplate cgo prologue. */
72
+
73
+ #ifdef __cplusplus
74
+ extern "C" {
75
+ #endif
76
+
77
+ extern void __start_in_background();
78
+ extern void __start();
79
+
80
+ #ifdef __cplusplus
81
+ }
82
+ #endif
Binary file
data/lib/hoopagent.rb ADDED
@@ -0,0 +1,36 @@
1
+ require 'ffi'
2
+ require 'rbconfig'
3
+
4
+ module HoopAgent
5
+ extend FFI::Library
6
+
7
+ @os = RbConfig::CONFIG['host_os']
8
+ @arch = RbConfig::CONFIG['host_cpu']
9
+ @platform = "#{@os}-#{@arch}"
10
+ @lib_path = File.expand_path("../#{@platform}/hoopagent.so", __FILE__)
11
+
12
+ if File.exist?(@lib_path)
13
+ ffi_lib @lib_path
14
+ attach_function :__start, [], :void
15
+ attach_function :__start_in_background, [], :void
16
+ else
17
+ puts "[hoopagent] platform not supported: #{@platform}, lib_so=#{@lib_path}"
18
+ end
19
+
20
+ def self.start_in_background
21
+ # avoid to block the main thread
22
+ if File.exist?(@lib_path)
23
+ Thread.new do
24
+ self.__start_in_background()
25
+ end
26
+ end
27
+ end
28
+
29
+ def self.start
30
+ # avoid to block the main thread
31
+ if File.exist?(@lib_path)
32
+ self.__start()
33
+ end
34
+ end
35
+
36
+ end
@@ -0,0 +1,82 @@
1
+ /* Code generated by cmd/cgo; DO NOT EDIT. */
2
+
3
+ /* package command-line-arguments */
4
+
5
+
6
+ #line 1 "cgo-builtin-export-prolog"
7
+
8
+ #include <stddef.h>
9
+
10
+ #ifndef GO_CGO_EXPORT_PROLOGUE_H
11
+ #define GO_CGO_EXPORT_PROLOGUE_H
12
+
13
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
14
+ typedef struct { const char *p; ptrdiff_t n; } _GoString_;
15
+ #endif
16
+
17
+ #endif
18
+
19
+ /* Start of preamble from import "C" comments. */
20
+
21
+
22
+
23
+
24
+ /* End of preamble from import "C" comments. */
25
+
26
+
27
+ /* Start of boilerplate cgo prologue. */
28
+ #line 1 "cgo-gcc-export-header-prolog"
29
+
30
+ #ifndef GO_CGO_PROLOGUE_H
31
+ #define GO_CGO_PROLOGUE_H
32
+
33
+ typedef signed char GoInt8;
34
+ typedef unsigned char GoUint8;
35
+ typedef short GoInt16;
36
+ typedef unsigned short GoUint16;
37
+ typedef int GoInt32;
38
+ typedef unsigned int GoUint32;
39
+ typedef long long GoInt64;
40
+ typedef unsigned long long GoUint64;
41
+ typedef GoInt64 GoInt;
42
+ typedef GoUint64 GoUint;
43
+ typedef size_t GoUintptr;
44
+ typedef float GoFloat32;
45
+ typedef double GoFloat64;
46
+ #ifdef _MSC_VER
47
+ #include <complex.h>
48
+ typedef _Fcomplex GoComplex64;
49
+ typedef _Dcomplex GoComplex128;
50
+ #else
51
+ typedef float _Complex GoComplex64;
52
+ typedef double _Complex GoComplex128;
53
+ #endif
54
+
55
+ /*
56
+ static assertion to make sure the file is being used on architecture
57
+ at least with matching size of GoInt.
58
+ */
59
+ typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 1:-1];
60
+
61
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
62
+ typedef _GoString_ GoString;
63
+ #endif
64
+ typedef void *GoMap;
65
+ typedef void *GoChan;
66
+ typedef struct { void *t; void *v; } GoInterface;
67
+ typedef struct { void *data; GoInt len; GoInt cap; } GoSlice;
68
+
69
+ #endif
70
+
71
+ /* End of boilerplate cgo prologue. */
72
+
73
+ #ifdef __cplusplus
74
+ extern "C" {
75
+ #endif
76
+
77
+ extern void __start_in_background();
78
+ extern void __start();
79
+
80
+ #ifdef __cplusplus
81
+ }
82
+ #endif
Binary file
@@ -0,0 +1,82 @@
1
+ /* Code generated by cmd/cgo; DO NOT EDIT. */
2
+
3
+ /* package command-line-arguments */
4
+
5
+
6
+ #line 1 "cgo-builtin-export-prolog"
7
+
8
+ #include <stddef.h>
9
+
10
+ #ifndef GO_CGO_EXPORT_PROLOGUE_H
11
+ #define GO_CGO_EXPORT_PROLOGUE_H
12
+
13
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
14
+ typedef struct { const char *p; ptrdiff_t n; } _GoString_;
15
+ #endif
16
+
17
+ #endif
18
+
19
+ /* Start of preamble from import "C" comments. */
20
+
21
+
22
+
23
+
24
+ /* End of preamble from import "C" comments. */
25
+
26
+
27
+ /* Start of boilerplate cgo prologue. */
28
+ #line 1 "cgo-gcc-export-header-prolog"
29
+
30
+ #ifndef GO_CGO_PROLOGUE_H
31
+ #define GO_CGO_PROLOGUE_H
32
+
33
+ typedef signed char GoInt8;
34
+ typedef unsigned char GoUint8;
35
+ typedef short GoInt16;
36
+ typedef unsigned short GoUint16;
37
+ typedef int GoInt32;
38
+ typedef unsigned int GoUint32;
39
+ typedef long long GoInt64;
40
+ typedef unsigned long long GoUint64;
41
+ typedef GoInt64 GoInt;
42
+ typedef GoUint64 GoUint;
43
+ typedef size_t GoUintptr;
44
+ typedef float GoFloat32;
45
+ typedef double GoFloat64;
46
+ #ifdef _MSC_VER
47
+ #include <complex.h>
48
+ typedef _Fcomplex GoComplex64;
49
+ typedef _Dcomplex GoComplex128;
50
+ #else
51
+ typedef float _Complex GoComplex64;
52
+ typedef double _Complex GoComplex128;
53
+ #endif
54
+
55
+ /*
56
+ static assertion to make sure the file is being used on architecture
57
+ at least with matching size of GoInt.
58
+ */
59
+ typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 1:-1];
60
+
61
+ #ifndef GO_CGO_GOSTRING_TYPEDEF
62
+ typedef _GoString_ GoString;
63
+ #endif
64
+ typedef void *GoMap;
65
+ typedef void *GoChan;
66
+ typedef struct { void *t; void *v; } GoInterface;
67
+ typedef struct { void *data; GoInt len; GoInt cap; } GoSlice;
68
+
69
+ #endif
70
+
71
+ /* End of boilerplate cgo prologue. */
72
+
73
+ #ifdef __cplusplus
74
+ extern "C" {
75
+ #endif
76
+
77
+ extern void __start_in_background();
78
+ extern void __start();
79
+
80
+ #ifdef __cplusplus
81
+ }
82
+ #endif
Binary file
metadata ADDED
@@ -0,0 +1,65 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: hoopagent
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.14.9.pre.beta1
5
+ platform: ruby
6
+ authors:
7
+ - Sandro Mello
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2023-07-02 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ffi
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.15'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.15'
27
+ description: Hoop Agent library
28
+ email: sandro@hoop.dev
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files: []
32
+ files:
33
+ - lib/darwin22-arm64/hoopagent.h
34
+ - lib/darwin22-arm64/hoopagent.so
35
+ - lib/darwin22-x86_64/hoopagent.h
36
+ - lib/darwin22-x86_64/hoopagent.so
37
+ - lib/hoopagent.rb
38
+ - lib/linux-arm64/hoopagent.h
39
+ - lib/linux-arm64/hoopagent.so
40
+ - lib/linux-x86_64/hoopagent.h
41
+ - lib/linux-x86_64/hoopagent.so
42
+ homepage: https://hoop.dev
43
+ licenses:
44
+ - Nonstandard
45
+ metadata: {}
46
+ post_install_message:
47
+ rdoc_options: []
48
+ require_paths:
49
+ - lib
50
+ required_ruby_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '2.5'
55
+ required_rubygems_version: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">"
58
+ - !ruby/object:Gem::Version
59
+ version: 1.3.1
60
+ requirements: []
61
+ rubygems_version: 3.0.3.1
62
+ signing_key:
63
+ specification_version: 4
64
+ summary: Hoop Agent
65
+ test_files: []