decode.go 328 B

123456789101112131415161718192021222324252627
  1. package ini
  2. import (
  3. "fmt"
  4. )
  5. type Unmarshaler interface {
  6. UnmarshalINI([]byte) error
  7. }
  8. type decode struct {
  9. scan *scanner
  10. }
  11. func Unmarshal(d []byte, v interface{}) error {
  12. dec := &decode{
  13. newScanner(d),
  14. }
  15. if err := dec.scan.valid(); err != nil {
  16. fmt.Println("ERROR, invalid", err)
  17. return err
  18. }
  19. return nil
  20. }