github.com/gocaveman/caveman@v0.0.0-20191211162744-0ddf99dbdf6e/themes/pleistocene/embed-data.go (about) 1 // Code generated by vfsgen; DO NOT EDIT. 2 3 // +build !cavemandev 4 5 package pleistocene 6 7 import ( 8 "bytes" 9 "compress/gzip" 10 "fmt" 11 "io" 12 "io/ioutil" 13 "net/http" 14 "os" 15 pathpkg "path" 16 "time" 17 ) 18 19 // EmbeddedAssets statically implements the virtual filesystem provided to vfsgen. 20 var EmbeddedAssets = func() http.FileSystem { 21 mustUnmarshalTextTime := func(text string) time.Time { 22 var t time.Time 23 err := t.UnmarshalText([]byte(text)) 24 if err != nil { 25 panic(err) 26 } 27 return t 28 } 29 30 fs := vfsgen۰FS{ 31 "/": &vfsgen۰DirInfo{ 32 name: "/", 33 modTime: mustUnmarshalTextTime("2018-05-10T02:08:56Z"), 34 }, 35 "/views": &vfsgen۰DirInfo{ 36 name: "views", 37 modTime: mustUnmarshalTextTime("2018-05-10T02:08:22Z"), 38 }, 39 "/views/_404.gohtml": &vfsgen۰CompressedFileInfo{ 40 name: "_404.gohtml", 41 modTime: mustUnmarshalTextTime("2018-05-10T02:08:45Z"), 42 uncompressedSize: 183, 43 44 compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x5c\xce\xad\x0e\xc2\x40\x10\x04\x60\xcd\x3d\xc5\xb6\x0a\x04\x39\x51\x07\xcb\x19\x7e\x24\x54\x60\x90\xa5\x37\x69\x2f\xb9\x9f\x86\x2e\xa2\x6f\x4f\x8e\x0b\x06\xb5\xc9\x66\xf2\xcd\x70\x75\xba\x1d\xef\x8f\xf6\x4c\xa3\x04\x6f\x14\xff\x0e\x3a\x6b\xd4\x8a\xc5\x89\x87\x69\xbb\x01\x74\x4d\x42\x97\xf4\x8e\x96\x75\xf9\x2a\xd6\x25\xc6\xcf\x64\x17\xa3\x14\xf7\x88\x82\x17\xcd\xb2\x78\x1c\xea\xa9\xb3\xd6\xc5\x61\x2b\x69\xda\x51\x83\xb0\xaf\x33\xdc\xfc\x69\x15\xad\x5b\x0f\x37\x4b\xea\x11\x41\x32\x22\x60\xc3\x7a\x6c\xb2\x5f\xc0\x4c\xeb\xd2\xc1\xfa\x3b\xf0\x13\x00\x00\xff\xff\xd7\xdf\x2c\x08\xb7\x00\x00\x00"), 45 }, 46 } 47 fs["/"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ 48 fs["/views"].(os.FileInfo), 49 } 50 fs["/views"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ 51 fs["/views/_404.gohtml"].(os.FileInfo), 52 } 53 54 return fs 55 }() 56 57 type vfsgen۰FS map[string]interface{} 58 59 func (fs vfsgen۰FS) Open(path string) (http.File, error) { 60 path = pathpkg.Clean("/" + path) 61 f, ok := fs[path] 62 if !ok { 63 return nil, &os.PathError{Op: "open", Path: path, Err: os.ErrNotExist} 64 } 65 66 switch f := f.(type) { 67 case *vfsgen۰CompressedFileInfo: 68 gr, err := gzip.NewReader(bytes.NewReader(f.compressedContent)) 69 if err != nil { 70 // This should never happen because we generate the gzip bytes such that they are always valid. 71 panic("unexpected error reading own gzip compressed bytes: " + err.Error()) 72 } 73 return &vfsgen۰CompressedFile{ 74 vfsgen۰CompressedFileInfo: f, 75 gr: gr, 76 }, nil 77 case *vfsgen۰DirInfo: 78 return &vfsgen۰Dir{ 79 vfsgen۰DirInfo: f, 80 }, nil 81 default: 82 // This should never happen because we generate only the above types. 83 panic(fmt.Sprintf("unexpected type %T", f)) 84 } 85 } 86 87 // vfsgen۰CompressedFileInfo is a static definition of a gzip compressed file. 88 type vfsgen۰CompressedFileInfo struct { 89 name string 90 modTime time.Time 91 compressedContent []byte 92 uncompressedSize int64 93 } 94 95 func (f *vfsgen۰CompressedFileInfo) Readdir(count int) ([]os.FileInfo, error) { 96 return nil, fmt.Errorf("cannot Readdir from file %s", f.name) 97 } 98 func (f *vfsgen۰CompressedFileInfo) Stat() (os.FileInfo, error) { return f, nil } 99 100 func (f *vfsgen۰CompressedFileInfo) GzipBytes() []byte { 101 return f.compressedContent 102 } 103 104 func (f *vfsgen۰CompressedFileInfo) Name() string { return f.name } 105 func (f *vfsgen۰CompressedFileInfo) Size() int64 { return f.uncompressedSize } 106 func (f *vfsgen۰CompressedFileInfo) Mode() os.FileMode { return 0444 } 107 func (f *vfsgen۰CompressedFileInfo) ModTime() time.Time { return f.modTime } 108 func (f *vfsgen۰CompressedFileInfo) IsDir() bool { return false } 109 func (f *vfsgen۰CompressedFileInfo) Sys() interface{} { return nil } 110 111 // vfsgen۰CompressedFile is an opened compressedFile instance. 112 type vfsgen۰CompressedFile struct { 113 *vfsgen۰CompressedFileInfo 114 gr *gzip.Reader 115 grPos int64 // Actual gr uncompressed position. 116 seekPos int64 // Seek uncompressed position. 117 } 118 119 func (f *vfsgen۰CompressedFile) Read(p []byte) (n int, err error) { 120 if f.grPos > f.seekPos { 121 // Rewind to beginning. 122 err = f.gr.Reset(bytes.NewReader(f.compressedContent)) 123 if err != nil { 124 return 0, err 125 } 126 f.grPos = 0 127 } 128 if f.grPos < f.seekPos { 129 // Fast-forward. 130 _, err = io.CopyN(ioutil.Discard, f.gr, f.seekPos-f.grPos) 131 if err != nil { 132 return 0, err 133 } 134 f.grPos = f.seekPos 135 } 136 n, err = f.gr.Read(p) 137 f.grPos += int64(n) 138 f.seekPos = f.grPos 139 return n, err 140 } 141 func (f *vfsgen۰CompressedFile) Seek(offset int64, whence int) (int64, error) { 142 switch whence { 143 case io.SeekStart: 144 f.seekPos = 0 + offset 145 case io.SeekCurrent: 146 f.seekPos += offset 147 case io.SeekEnd: 148 f.seekPos = f.uncompressedSize + offset 149 default: 150 panic(fmt.Errorf("invalid whence value: %v", whence)) 151 } 152 return f.seekPos, nil 153 } 154 func (f *vfsgen۰CompressedFile) Close() error { 155 return f.gr.Close() 156 } 157 158 // vfsgen۰DirInfo is a static definition of a directory. 159 type vfsgen۰DirInfo struct { 160 name string 161 modTime time.Time 162 entries []os.FileInfo 163 } 164 165 func (d *vfsgen۰DirInfo) Read([]byte) (int, error) { 166 return 0, fmt.Errorf("cannot Read from directory %s", d.name) 167 } 168 func (d *vfsgen۰DirInfo) Close() error { return nil } 169 func (d *vfsgen۰DirInfo) Stat() (os.FileInfo, error) { return d, nil } 170 171 func (d *vfsgen۰DirInfo) Name() string { return d.name } 172 func (d *vfsgen۰DirInfo) Size() int64 { return 0 } 173 func (d *vfsgen۰DirInfo) Mode() os.FileMode { return 0755 | os.ModeDir } 174 func (d *vfsgen۰DirInfo) ModTime() time.Time { return d.modTime } 175 func (d *vfsgen۰DirInfo) IsDir() bool { return true } 176 func (d *vfsgen۰DirInfo) Sys() interface{} { return nil } 177 178 // vfsgen۰Dir is an opened dir instance. 179 type vfsgen۰Dir struct { 180 *vfsgen۰DirInfo 181 pos int // Position within entries for Seek and Readdir. 182 } 183 184 func (d *vfsgen۰Dir) Seek(offset int64, whence int) (int64, error) { 185 if offset == 0 && whence == io.SeekStart { 186 d.pos = 0 187 return 0, nil 188 } 189 return 0, fmt.Errorf("unsupported Seek in directory %s", d.name) 190 } 191 192 func (d *vfsgen۰Dir) Readdir(count int) ([]os.FileInfo, error) { 193 if d.pos >= len(d.entries) && count > 0 { 194 return nil, io.EOF 195 } 196 if count <= 0 || count > len(d.entries)-d.pos { 197 count = len(d.entries) - d.pos 198 } 199 e := d.entries[d.pos : d.pos+count] 200 d.pos += count 201 return e, nil 202 }