1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package provider
- import (
- "context"
- "github.com/hashicorp/terraform-plugin-framework/function"
- )
- var (
- _ function.Function = ExampleFunction{}
- )
- func NewExampleFunction() function.Function {
- return ExampleFunction{}
- }
- type ExampleFunction struct{}
- func (r ExampleFunction) Metadata(_ context.Context, req function.MetadataRequest, resp *function.MetadataResponse) {
- resp.Name = "example"
- }
- func (r ExampleFunction) Definition(_ context.Context, _ function.DefinitionRequest, resp *function.DefinitionResponse) {
- resp.Definition = function.Definition{
- Summary: "Example function",
- MarkdownDescription: "Echoes given argument as result",
- Parameters: []function.Parameter{
- function.StringParameter{
- Name: "input",
- MarkdownDescription: "String to echo",
- },
- },
- Return: function.StringReturn{},
- }
- }
- func (r ExampleFunction) Run(ctx context.Context, req function.RunRequest, resp *function.RunResponse) {
- var data string
- resp.Error = function.ConcatFuncErrors(req.Arguments.Get(ctx, &data))
- if resp.Error != nil {
- return
- }
- resp.Error = function.ConcatFuncErrors(resp.Result.Set(ctx, data))
- }
|