package function import ( "strings" "github.com/zclconf/go-cty/cty" "github.com/zclconf/go-cty/cty/function" ) // EndsWithFunc constructs a function that checks if a string ends with // a specific suffix using strings.HasSuffix var EndsWithFunc = function.New(&function.Spec{ Params: []function.Parameter{ { Name: "str", Type: cty.String, }, { Name: "suffix", Type: cty.String, }, }, Type: function.StaticReturnType(cty.Bool), RefineResult: refineNotNull, Impl: func(args []cty.Value, retType cty.Type) (cty.Value, error) { str := args[0].AsString() suffix := args[1].AsString() return cty.BoolVal(strings.HasSuffix(str, suffix)), nil }, })