summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--internal/generated/nqc.raku8
-rw-r--r--internal/generated/tracepoints.go16
-rw-r--r--internal/generated/types/types.go10
3 files changed, 19 insertions, 15 deletions
diff --git a/internal/generated/nqc.raku b/internal/generated/nqc.raku
index f358e2a..a777ba1 100644
--- a/internal/generated/nqc.raku
+++ b/internal/generated/nqc.raku
@@ -44,10 +44,14 @@ class NQCToGoActions {
method !struct-go-string-method($/) returns Str {
my Str $self-ref = $<identifier>.lc.substr(0,1);
my Str @format = $<member>.map({ $_.<identifier>.made ~ ':%v' });
- my Str @args = $<member>.map({ "$self-ref." ~ $_.<identifier>.made });
+ my Str @args = $<member>.map({
+ my Str $ref = "$self-ref." ~ $_.<identifier>.made;
+ # Need to convert char-arrays into a Go slice, and then convert via string(...)
+ ($_.<type> eq 'char' && $_.<arraysize>) ?? "string({$ref}[:])" !! $ref;
+ });
return qq:to/END/;
- func ({$self-ref} {$<identifier>}) String() string \{
+ func ({$self-ref} {$<identifier>.made}) String() string \{
\treturn fmt.Sprintf("{@format.join(' ')}", {@args.join(', ')})
\}
END
diff --git a/internal/generated/tracepoints.go b/internal/generated/tracepoints.go
index 480feed..f4f891a 100644
--- a/internal/generated/tracepoints.go
+++ b/internal/generated/tracepoints.go
@@ -2,13 +2,13 @@
package generated
var TracepointList = []string{
- "enter_close"
- "exit_close"
- "enter_openat"
- "exit_openat"
- "enter_open"
- "exit_open"
- "enter_write"
- "exit_write"
+ "enter_close",
+ "exit_close",
+ "enter_openat",
+ "exit_openat",
+ "enter_open",
+ "exit_open",
+ "enter_write",
+ "exit_write",
}
diff --git a/internal/generated/types/types.go b/internal/generated/types/types.go
index 2cee711..505b1ca 100644
--- a/internal/generated/types/types.go
+++ b/internal/generated/types/types.go
@@ -14,7 +14,7 @@ type NullEvent struct {
Time uint64
}
-func (n null_event) String() string {
+func (n NullEvent) String() string {
return fmt.Sprintf("OpId:%v PidTgid:%v Time:%v", n.OpId, n.PidTgid, n.Time)
}
@@ -26,7 +26,7 @@ type FdEvent struct {
Fd int32
}
-func (f fd_event) String() string {
+func (f FdEvent) String() string {
return fmt.Sprintf("OpId:%v PidTgid:%v Time:%v Fd:%v", f.OpId, f.PidTgid, f.Time, f.Fd)
}
@@ -39,8 +39,8 @@ type OpenatEnterEvent struct {
Comm [MAX_PROGNAME_LENGTH]byte
}
-func (o openat_enter_event) String() string {
- return fmt.Sprintf("OpId:%v PidTgid:%v Time:%v Filename:%v Comm:%v", o.OpId, o.PidTgid, o.Time, o.Filename, o.Comm)
+func (o OpenatEnterEvent) String() string {
+ return fmt.Sprintf("OpId:%v PidTgid:%v Time:%v Filename:%v Comm:%v", o.OpId, o.PidTgid, o.Time, string(o.Filename[:]), string(o.Comm[:]))
}
@@ -48,7 +48,7 @@ type Flags struct {
UidFilter uint32
}
-func (f flags) String() string {
+func (f Flags) String() string {
return fmt.Sprintf("UidFilter:%v", f.UidFilter)
}