github.com/Cloud-Foundations/Dominator@v0.3.4/lib/decoders/api.go (about)

     1  package decoders
     2  
     3  import (
     4  	"io"
     5  )
     6  
     7  type Decoder interface {
     8  	Decode(value interface{}) error
     9  }
    10  
    11  type DecoderGenerator func(r io.Reader) Decoder
    12  
    13  func RegisterDecoder(extension string, decoderGenerator DecoderGenerator) {
    14  	registerDecoder(extension, decoderGenerator)
    15  }
    16  
    17  func DecodeFile(filename string, value interface{}) error {
    18  	return defaultDecoders.decodeFile(filename, value)
    19  }
    20  
    21  func FindAndDecodeFile(basename string, value interface{}) error {
    22  	return defaultDecoders.findAndDecodeFile(basename, value)
    23  }