github.com/yanndegat/hiera@v0.6.8/config/function.go (about)

     1  package config
     2  
     3  import (
     4  	"github.com/yanndegat/hiera/api"
     5  )
     6  
     7  type (
     8  	function struct {
     9  		kind api.FunctionKind
    10  		name string
    11  	}
    12  )
    13  
    14  func (f *function) Kind() api.FunctionKind {
    15  	return f.kind
    16  }
    17  
    18  func (f *function) Name() string {
    19  	return f.name
    20  }
    21  
    22  func (f *function) Resolve(ic api.Invocation) (api.Function, bool) {
    23  	if n, changed := ic.InterpolateString(f.name, false); changed {
    24  		return &function{f.kind, n.String()}, true
    25  	}
    26  	return f, false
    27  }