summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/d5/tengo/stdlib/fmt.go
diff options
context:
space:
mode:
authorWim <wim@42.be>2020-01-09 21:52:19 +0100
committerGitHub <noreply@github.com>2020-01-09 21:52:19 +0100
commit9d84d6dd643c4017074e81465671cd9b25f9539a (patch)
tree8a767f91d655a6cf21d476e4fb7aa6fd8a952df8 /vendor/github.com/d5/tengo/stdlib/fmt.go
parent0f708daf2d14dcca261ef98cc698a1b1f2a6aa74 (diff)
downloadmatterbridge-msglm-9d84d6dd643c4017074e81465671cd9b25f9539a.tar.gz
matterbridge-msglm-9d84d6dd643c4017074e81465671cd9b25f9539a.tar.bz2
matterbridge-msglm-9d84d6dd643c4017074e81465671cd9b25f9539a.zip
Update to tengo v2 (#976)
Diffstat (limited to 'vendor/github.com/d5/tengo/stdlib/fmt.go')
-rw-r--r--vendor/github.com/d5/tengo/stdlib/fmt.go110
1 files changed, 0 insertions, 110 deletions
diff --git a/vendor/github.com/d5/tengo/stdlib/fmt.go b/vendor/github.com/d5/tengo/stdlib/fmt.go
deleted file mode 100644
index b8f64278..00000000
--- a/vendor/github.com/d5/tengo/stdlib/fmt.go
+++ /dev/null
@@ -1,110 +0,0 @@
-package stdlib
-
-import (
- "fmt"
-
- "github.com/d5/tengo"
- "github.com/d5/tengo/objects"
-)
-
-var fmtModule = map[string]objects.Object{
- "print": &objects.UserFunction{Name: "print", Value: fmtPrint},
- "printf": &objects.UserFunction{Name: "printf", Value: fmtPrintf},
- "println": &objects.UserFunction{Name: "println", Value: fmtPrintln},
- "sprintf": &objects.UserFunction{Name: "sprintf", Value: fmtSprintf},
-}
-
-func fmtPrint(args ...objects.Object) (ret objects.Object, err error) {
- printArgs, err := getPrintArgs(args...)
- if err != nil {
- return nil, err
- }
-
- _, _ = fmt.Print(printArgs...)
-
- return nil, nil
-}
-
-func fmtPrintf(args ...objects.Object) (ret objects.Object, err error) {
- numArgs := len(args)
- if numArgs == 0 {
- return nil, objects.ErrWrongNumArguments
- }
-
- format, ok := args[0].(*objects.String)
- if !ok {
- return nil, objects.ErrInvalidArgumentType{
- Name: "format",
- Expected: "string",
- Found: args[0].TypeName(),
- }
- }
- if numArgs == 1 {
- fmt.Print(format)
- return nil, nil
- }
-
- s, err := objects.Format(format.Value, args[1:]...)
- if err != nil {
- return nil, err
- }
-
- fmt.Print(s)
-
- return nil, nil
-}
-
-func fmtPrintln(args ...objects.Object) (ret objects.Object, err error) {
- printArgs, err := getPrintArgs(args...)
- if err != nil {
- return nil, err
- }
-
- printArgs = append(printArgs, "\n")
- _, _ = fmt.Print(printArgs...)
-
- return nil, nil
-}
-
-func fmtSprintf(args ...objects.Object) (ret objects.Object, err error) {
- numArgs := len(args)
- if numArgs == 0 {
- return nil, objects.ErrWrongNumArguments
- }
-
- format, ok := args[0].(*objects.String)
- if !ok {
- return nil, objects.ErrInvalidArgumentType{
- Name: "format",
- Expected: "string",
- Found: args[0].TypeName(),
- }
- }
- if numArgs == 1 {
- return format, nil // okay to return 'format' directly as String is immutable
- }
-
- s, err := objects.Format(format.Value, args[1:]...)
- if err != nil {
- return nil, err
- }
-
- return &objects.String{Value: s}, nil
-}
-
-func getPrintArgs(args ...objects.Object) ([]interface{}, error) {
- var printArgs []interface{}
- l := 0
- for _, arg := range args {
- s, _ := objects.ToString(arg)
- slen := len(s)
- if l+slen > tengo.MaxStringLen { // make sure length does not exceed the limit
- return nil, objects.ErrStringLimit
- }
- l += slen
-
- printArgs = append(printArgs, s)
- }
-
- return printArgs, nil
-}