Skip to content

Commit b7c8b66

Browse files
authored
Fix method signature validation (#16)
1 parent 9733e9a commit b7c8b66

2 files changed

Lines changed: 7 additions & 9 deletions

File tree

module.go

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -182,16 +182,9 @@ func isError(rt reflect.Type, at int) bool {
182182

183183
func isValid(rt reflect.Type, at int) bool {
184184
switch rt.Out(at) {
185-
case typeString:
186-
case typeNumber:
187-
case typeBool:
188-
case typeNumbers:
189-
case typeStrings:
190-
case typeBools:
191-
case typeTable:
192-
case typeArray:
185+
case typeString, typeNumber, typeBool, typeNumbers, typeStrings, typeBools, typeTable, typeArray, typeValue:
186+
return true
193187
default:
194188
return false
195189
}
196-
return true
197190
}

module_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ func testModule() Module {
3131
must(m.Register("error", errorfunc))
3232
must(m.Register("error1", errorfunc1))
3333
must(m.Register("toNumbers", toNumbers))
34+
must(m.Register("value", value))
3435
return m
3536
}
3637

@@ -89,6 +90,10 @@ func toNumbers(v Value) (Numbers, error) {
8990
}
9091
}
9192

93+
func value(v Value) (Value, error) {
94+
return v, nil
95+
}
96+
9297
func Test_Join(t *testing.T) {
9398
s, err := newScript("fixtures/join.lua")
9499
assert.NoError(t, err)

0 commit comments

Comments
 (0)