24 lines
449 B
Go
24 lines
449 B
Go
// Copyright (c) 2024-2026 Celestino Amoroso (celestino.amoroso@gmail.com).
|
|
// All rights reserved.
|
|
|
|
// string.go
|
|
package kern
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
func IsString(v any) (ok bool) {
|
|
_, ok = v.(string)
|
|
return ok
|
|
}
|
|
|
|
func ToGoString(value any, description string) (s string, err error) {
|
|
if s, ok := value.(string); ok {
|
|
return s, nil
|
|
} else {
|
|
err = fmt.Errorf("%s expected string, got %s (%v)", description, TypeName(value), value)
|
|
}
|
|
return
|
|
}
|