io.go 600 B

1234567891011121314151617181920212223242526272829
  1. // Automatically generated by internal/cmd/genreadfile/main.go. DO NOT EDIT
  2. package jwk
  3. import "os"
  4. // ReadFileOption describes options that can be passed to ReadFile.
  5. type ReadFileOption interface {
  6. Option
  7. readFileOption()
  8. }
  9. func ReadFile(path string, options ...ReadFileOption) (Set, error) {
  10. var parseOptions []ParseOption
  11. for _, option := range options {
  12. switch option := option.(type) {
  13. case ParseOption:
  14. parseOptions = append(parseOptions, option)
  15. }
  16. }
  17. f, err := os.Open(path)
  18. if err != nil {
  19. return nil, err
  20. }
  21. defer f.Close()
  22. return ParseReader(f, parseOptions...)
  23. }