go.charczuk.com@v0.0.0-20240327042549-bc490516bd1a/projects/nodes/pkg/model/gen/cutoff_epsilon.go (about) 1 // File generated by nodegen. DO NOT EDIT. 2 package gen 3 4 import ( 5 "fmt" 6 "time" 7 8 "github.com/wcharczuk/go-incr" 9 "go.charczuk.com/projects/nodes/pkg/funcs" 10 "go.charczuk.com/projects/nodes/pkg/incrutil" 11 "go.charczuk.com/projects/nodes/pkg/types" 12 ) 13 14 func CutoffEpsilonForNode(graph *incr.Graph, n *types.Node) (output incr.INode, err error) { 15 switch n.Metadata.InputType { 16 case "float64": 17 output = incrutil.Cutoff2Context[float64, float64](graph, funcs.CutoffEpsilon[float64]) 18 return 19 case "int64": 20 output = incrutil.Cutoff2Context[int64, int64](graph, funcs.CutoffEpsilon[int64]) 21 return 22 case "duration": 23 output = incrutil.Cutoff2Context[time.Duration, time.Duration](graph, funcs.CutoffEpsilon[time.Duration]) 24 return 25 default: 26 err = fmt.Errorf("invalid cutoffepsilon input type %v", n.Metadata.InputType) 27 return 28 } 29 }