203 lines
21 KiB
Go
203 lines
21 KiB
Go
|
// Code generated by vfsgen; DO NOT EDIT.
|
|||
|
|
|||
|
// +build !dev
|
|||
|
|
|||
|
package assets
|
|||
|
|
|||
|
import (
|
|||
|
"bytes"
|
|||
|
"compress/gzip"
|
|||
|
"fmt"
|
|||
|
"io"
|
|||
|
"io/ioutil"
|
|||
|
"net/http"
|
|||
|
"os"
|
|||
|
pathpkg "path"
|
|||
|
"time"
|
|||
|
)
|
|||
|
|
|||
|
// Assets statically implements the virtual filesystem provided to vfsgen.
|
|||
|
var Assets = func() http.FileSystem {
|
|||
|
fs := vfsgen۰FS{
|
|||
|
"/": &vfsgen۰DirInfo{
|
|||
|
name: "/",
|
|||
|
modTime: time.Date(2021, 1, 8, 19, 16, 4, 19648059, time.UTC),
|
|||
|
},
|
|||
|
"/{{.File.Package}}_micro.pb.go.tmpl": &vfsgen۰CompressedFileInfo{
|
|||
|
name: "{{.File.Package}}_micro.pb.go.tmpl",
|
|||
|
modTime: time.Date(2021, 1, 8, 12, 40, 55, 173921701, time.UTC),
|
|||
|
uncompressedSize: 4772,
|
|||
|
|
|||
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff\xd4\x57\x4d\x6f\xdc\x36\x13\x3e\x5b\xbf\x62\x20\xbc\x08\xa4\x60\x2d\x1d\xde\xdb\x16\x39\x38\x46\x82\x16\xa8\x9d\x20\x2e\xda\x43\x10\x18\xb4\x34\xab\x25\xac\x25\x55\x92\x5a\xc7\x90\xf5\xdf\x0b\x7e\xe8\x8b\xab\xd5\xda\x86\x51\xa0\xbe\x58\x22\xe7\x19\xce\x0c\x9f\x99\x7d\x94\xa6\x70\xc9\x73\x84\x02\x19\x0a\xa2\x30\x87\xbb\x47\xa8\x04\x57\x3c\x3b\x2f\x90\x9d\xef\x68\x26\x78\x90\xa6\x20\x79\x2d\x32\x5c\x43\xd3\x24\x9f\x69\x89\xc9\x35\xd9\x61\xdb\x06\x15\xc9\xee\x49\x81\xd0\x34\x05\xff\x7a\x5f\xfc\x4e\xa4\xfa\x54\xe2\x0e\x99\x02\x63\x07\x4f\x20\xab\x92\xaa\x0b\x21\xc8\x23\x84\xbf\x84\xf0\x04\x25\x91\xaa\x6d\x83\x80\xee\x2a\x2e\x14\x44\xc1\x59\x98\x71\xa6\xf0\xa7\x0a\x83\xe0\xcc\x9c\x78\x4b\x2a\x0a\x61\x41\xd5\xb6\xbe\x4b\x32\xbe\x4b\x6b\x46\xa5\x22\xd9\xfd\x39\x17\x45\x6a\x4c\xd2\xfd\xff\x53\x52\xd1\x10\x00\xa0\x43\x65\x25\xd5\x27\x9f\x06\x5a\xc3\xb0\x07\x4a\x14\x7b\x14\xcf\x00\x5a\xc3\x30\x88\x83\xa0\x69\xce\xe1\x7f\x37\x28\xf6\x34\x43\x5d\x0d\x58\x7f\x80\xc4\xbd\x9b\xf2\xc0\x13\x28\x41\x77\x37\xf5\x66\x43\x7f\x42\xe8\xb6\x42\xd0\xb9\xa7\x29\x5c\xe3\x43\xd3\x8c\x1d\xb4\xed\x27\x96\x57\x9c\x32\x25\xf5\x15\xec\x69\x8e\x12\x74\x21\xb0\x5f\xde\xa1\xca\x89\x22\xb0\xe1\x02\x7c\x30\x48\xfb\x16\x6c\x6a\x96\x2d\x7a\x8f\x62\xf8\xfe\xe3\x7d\x5f\xe8\xa4\xdb\x80\x26\xd0\xd5\xdc\x13\x31\x3a\x72\xd6\x32\x30\x86\xba\x02\x82\xb0\x02\x87\xbc\xaf\x50\x6d\x79\xde\xb6\xfd\x3e\xdd\x00\x43\x88\xb6\x4a\x55\x7f\xa2\xb8\x83\x24\x86\xd0\x94\x40\x1b\x74\xa7\xe8\xd2\xbd\x3b\x3c\xc5\x86\xa3\xff\x74\x02\x6b\x08\xfd\x8c\x92\xa6\x71\x44\x0c\x57\xbd\xed\x57\xa2\xb6\x6b\xf8\xfe\x43\x2a\x41\x59\xd1\x84\x4d\xa3\x0f\xd7\xab\x90\xb4\x6d\xd8\x0e\x96\x36\xd8\x43\x5b\x1b\xe8\xd4\xd6\xcb\xe5\x23\xcf\x1f\xa7\xb9\xe8\x3f\xbd\x6a\xc2\x1c\x4c\x26\xa1\x69\x27\xc8\xf2\x11\xc2\xb9\xe5\x02\xa2\xe4\xd2\x90\xf2\x46\x09\x24\x3b\xca\x8a\x18\x22\x53\x56\x14\xc3\xd2\x08\x69\x17\xd7\xa0\x44\x8d\x4b\x27\xfc\x4a\x58\x5e\xa2\x58\x43\x28\xaa\xcc\xc5\xd2\x7a\xd7\xd7\x15\x48\x5e\xe4\x39\x55\x94\x33\x52\x7e\xa4\x2c\xa7\xac\x90\x90\xf8\x97\x95\x98\x52\x7e\x00\x52\x55\xc8\xf2\x68\xb2\xbc\xd2\xc9\xeb\x9c\xe3\xe0\x30\x9a\x81\x53\x07\x60\xb9\xea\x77\xe7\x90\xd3\x37\x81\xaa\x16\x6c\x70\x17\xd8\x7e\xf2\xc9\xe1\x5e\x80\x32\x85\x62\x43\x32\x0c\xd4\x63\x85\xa7\xcd\x4c\x17\x2c\x53\xdb\xb4\xbe\xc0\xbf\xed\x92\x69\xfc\xdf\x58\x55\xab\x3f\xf4\x01\xd3\x89\x97\x74\x13\x0f\x46\x48\x59\x8d\x90\x5f\x6a\xf5\x6c\x68\x47\x15\x9f\x17\x33\xec\x19\x63\x08\xcb\x67\x41\x8c\x2b\x98\x07\x6a\xa8\x6b\xad\xc8\x0d\xe7\xe4\xd2\xfe\x5f\xc1\xfb\xa6\x19\xb2\x6f\xdb\x15\x24\x49\x32\x1e\xc0\xc9\x25\x29\xcb\x2f\x95\x26\x52\x0c\x91\x5f\xf0\xdb\xde\xb3\x5b\x5e\x01\x0a\xc1\x45\xec\xe2\xc5\x52\xe2\xe9\x18\xde\xf6\x48\x36\xdc\xeb\xf3\x8e\x7f\x59\x09\x8c\x75\x77\xe9\xda\xfa\xf8\xe9\xe6\xb9\xd5\xbf\x2e\xc7\xe8\xf7\x1a\xf2\xf5\xb0\x17\x32\xcf\xe0\x5e\x46\xba\xd9\x26\x3b\xb8\x00\xaf\xdd\x00\x5c\x65\xa3\x18\xbc\x5a\x9b\xdd\x1b\x64\xf9\x95\x2c\xa2\x1e\xd5\xb4\xb1\x2d\xa2\xd9\xfe\x86\xd9\x7e\x61\x7b\xd2\x05\x87\x53\xd6\x74\xc1\x91\x49\xab\x3d\x5f\xb0\xfc\xb2\xe4\x12\xa3\xc5\x9b\xf4\xa7\x54\x07\x39\x08\xc3\x8f\xc0\xd9\xeb\x14\x23\x8f\x56\x3e\x7a\x3a\x11\xb5\x2f\x2f\xec\x51\xd4\xcf\x8f\xd6\x72\xc3\x3e\x0f\x4f\x69\x0a\x57\x9a\xd0\xe0\xb4\x91\x54\xf5\x66\x33\x3b\x68\xdd\x2f\x4c\x67\xb8\xb5\xaf\xf3\x44\xe8\x6c\xc7\xd7\x7f\xb6\x34\x6c\xff\x75\xb6\xbf\x7c\xc8\x0e\xe2\x60\x66\x9c\xbe\x62\x94\x2c\x34\x8f\xf1\x7a\xc0\x8a\x67\x4d\xac\x17\x7b\x1d\xf8\xf0\xba\x89\xe8\x91\xaf\xf3\x3f\xc7\x35\xfb\x03\xfe\x0d\x0b\x2a\x15\x8a\x63\x9c\x11\x6e\x5f\xfa\x4c\x33\x82\xf7\x04\x3a\x92\x30\x96\xfa\xee\x72\x57\x20\xb7\xc7\x38\xba\x02\x5e\x29\x39\x0c\x76\x07\x74\xbb\xdd\x6c\x37\x49\xb9\x19\x36\xc3\x78\xcd\x2c\xfe\x80\xe2\x33\x15\x9a\x5f\x53\xde\xff\xf7\x89\x7f\x82\x13\xd3\x8a\x4f\x68\xe6\x11\xeb\x8d\xc8\x65\x4b\x6a\x49\x35\x7e\x1e\x44\xef\xec\x54\x02\xa9\x44\x9d\x75\xdf\x3f\x36\x96\x85\x5b\x1c\xb9\xdb\x9a\x4f\x97\x45\x6b\x47\x98\x46\x6e\x2d\x44\x7f\xbb\xdd\xae\x26\xdf\x3e\x96\x03\x27\x3e\xd9\x86\xe0\x0c\x2f\x7b\x0d\xad\xdf\xba\x52\xeb\xaf\xa7\xbf\xa8\xda\x76\xb8\x5e\x60\xc7\xf1\x28\x68\x27\xa0\xa5\
|
|||
|
},
|
|||
|
"/{{.File.Package}}_micro_grpc.pb.go.tmpl": &vfsgen۰CompressedFileInfo{
|
|||
|
name: "{{.File.Package}}_micro_grpc.pb.go.tmpl",
|
|||
|
modTime: time.Date(2021, 1, 8, 12, 50, 25, 183502330, time.UTC),
|
|||
|
uncompressedSize: 6715,
|
|||
|
|
|||
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff\xcc\x57\x4d\x6f\xa4\x38\x13\x3e\xe3\x5f\x51\x83\x5e\x8d\xe0\x15\xa1\x0f\x7b\xcb\x28\x87\x51\xb4\xa3\x5d\x69\x93\x59\x4d\xf6\x1e\x31\xb4\x9b\xa0\x80\xe9\x18\xd3\xe9\x88\xf0\xdf\x57\x2e\x1b\x30\x6e\xa0\xbb\x43\xb2\xbb\x39\xa4\x85\xed\x72\x7d\x3e\x55\x8f\x57\x2b\xb8\x2e\xd6\x14\x12\xca\x28\x8f\x04\x5d\xc3\xcf\x17\xd8\xf2\x42\x14\xf1\x45\x42\xd9\x45\x9e\xc6\xbc\x20\xab\x15\x94\x45\xc5\x63\x7a\x09\x75\x1d\x7e\x4b\x33\x1a\xde\x46\x39\x6d\x1a\xb2\x8d\xe2\xc7\x28\xa1\x50\xd7\x49\xf1\xe7\x63\xf2\x47\x54\x8a\x5f\x33\x9a\x53\x26\x00\xcf\xc1\x2b\x94\xdb\x2c\x15\x5f\x39\x8f\x5e\xc0\xfd\xe2\xc2\x2b\x64\x51\x29\x9a\x86\x90\x34\xdf\x16\x5c\x80\x47\x1c\x37\x2e\x98\xa0\x7b\xe1\x12\xe2\xa0\xc6\xfb\x38\x4b\xe5\x1d\x6e\x92\x8a\x87\xea\x67\x18\x17\xf9\xaa\x62\x69\x29\xa2\xf8\xf1\xa2\xe0\xc9\x0a\x4f\xad\x76\xbf\xac\xd4\x41\x17\x5a\xc1\x92\xf2\x1d\xe5\x27\x08\xaa\x83\x2e\xf1\x09\xd9\x45\x1c\x3c\x02\x00\x70\x0f\xe6\x2d\xe1\xf7\xad\x48\x0b\x36\xd8\x51\xfa\xda\x1d\x9f\x90\xba\xbe\x80\xff\xa1\xab\x97\x57\xda\xe7\xa6\x51\xab\x77\x94\xef\xd2\x98\xca\x50\xe1\xa6\xfe\xc6\xd8\xc1\x2b\x08\x9e\xe6\x77\xd5\x66\x93\xee\xc1\xd5\x5b\xae\x94\x25\xe2\x65\x2b\x23\x3a\x90\x7f\x85\xac\x78\xa6\xfc\x5b\xca\x65\xf0\xf4\x0e\x94\x82\x57\xb1\x80\x1a\x4d\x8c\x87\x26\x5e\xe3\x0f\xee\x30\x79\x43\x29\x78\xca\x12\xd2\x10\x99\xce\x1b\x79\x12\x74\x94\x4b\x51\x6d\x36\xb8\x7c\x4b\x9f\x87\x7a\x7b\x55\x31\xa7\x91\xa0\xc0\xe8\x33\x94\xed\x92\xd2\xb0\xa9\x58\x3c\x23\xe9\x19\xda\x83\x71\x23\x7d\x98\xd2\xaa\x3c\xe3\x54\x54\x9c\xc1\xe7\x53\x62\x52\xc7\x97\x10\x07\xe8\xf2\x25\xfe\x6f\xa4\xcb\x75\xcd\x23\x96\xd0\x3e\x07\x37\x54\x3c\x14\xeb\x36\x53\x9c\x3e\xa9\x05\xcc\xd3\xef\x6c\x5b\x89\xbf\x64\x12\x86\xd5\x1b\x1a\xd5\xab\xc4\xca\xad\x21\xf6\xbd\x12\xa7\xc9\xa5\x1b\x88\xd8\x1a\x3c\x56\x08\xd0\x11\xb8\x13\x9c\x46\x79\xca\x12\x1f\x3c\xb4\x91\x72\x63\xe9\xa2\x69\x54\x94\xbd\x18\xfe\x7f\x4a\x10\x64\x40\x35\x44\xbd\x58\xec\x41\xe3\x2b\xbc\x56\xbf\x01\x70\xfa\x84\x37\x75\x8e\x37\x4d\x00\xc5\x56\x94\x10\x86\xe1\x30\x43\x51\x96\xa9\x6a\xf7\xc1\xb3\xd3\x74\xdf\xa9\xd1\xcb\x01\x50\xce\x0b\xee\x63\xe2\xa4\xaf\x34\x2b\xa9\x74\xd8\xf6\xf3\x03\x7c\xfa\x30\xf3\xff\x33\xe1\x47\x91\xb6\xe6\xa4\x88\x6d\x2d\x5b\xa3\xb1\xea\x2b\xdd\x40\xc1\xc7\xca\xc9\x3b\x28\x3a\x94\x01\x09\x52\x1a\xe5\x78\xad\xac\xe8\x38\x8c\x43\x75\x46\x7a\x11\xe0\xf7\x2d\x7d\xfe\x41\x9f\x2a\x5a\x0a\x2f\x0e\x25\xbc\x02\x70\xed\xb0\x86\x9d\xf7\x6e\x80\xa0\x35\xdc\xac\x1b\x5f\x79\x1a\x86\xa1\x8f\x4a\xd3\x0d\xea\xfb\x74\x05\x2c\xcd\x34\xe0\x3b\xc8\xb3\x34\x43\x73\x70\xd5\x70\x6c\x0c\x3a\xd0\x34\xf0\xcf\xfe\x99\xf6\x5f\x5e\xe9\xf0\x85\x77\x94\xad\x3d\x4e\x9f\xfc\x2f\xe7\x3a\x46\xd9\x5a\x67\xe2\xac\x8e\xd7\x46\xbb\x56\x06\x34\x81\xbc\xdd\x28\xe0\xf6\xce\x72\x2b\xad\xfc\x3c\x2c\xa2\x5a\x6d\x1a\x29\x97\x25\xb7\x20\xe1\xd2\xf3\x40\x2a\x3b\x29\xcf\xd3\x01\xe9\x76\xf0\x2a\xc3\x23\x0c\x92\xec\xa4\xe7\x15\xf8\xc8\x54\x1d\xe9\x00\x90\x32\x41\xf9\x26\xea\x66\x8f\xc6\xac\xe7\xdb\x28\xc6\x5d\x99\xeb\x9b\x32\xf1\x3a\xa9\xba\xf1\x15\x2a\x71\xfb\x07\x8d\x77\x33\xdb\xe6\x30\x18\x19\x04\x58\xe4\xb6\x73\x3a\x99\xf2\xe6\xaf\x6c\x7d\x9d\x15\x25\xf5\xa6\x5b\x43\xa7\xa6\x2f\xad\x56\xe4\xc0\x0c\xdb\x02\x7d\x1e\xcb\xd9\x6a\x56\xb6\x74\x7f\x7b\x7b\x97\x65\xb6\x61\xf5\xe9\xd6\x9e\x43\x85\xba\x3c\x0e\x39\x91\x42\xc4\x90\x73\x28\xa3\xda\x0a\x3a\x37\xf8\x6a\x10\xec\x4f\x1b\x04\x9d\x55\xfe\xa9\x09\x83\x9a\x38\xf9\x38\x4c\x1d\x8d\xd1\x7d\xd8\x96\x55\xee\x13\x47\xc3\xea\xaa\x85\x95\x83\xc7\xe4\x29\xad\x8a\x38\x0d\xe9\x8e\x7d\xea\x8f\xd9\xb8\x73\x1a\xe2\x90\x76\x35\x57\x88\x53\x7c\x45\x65\xe3\xcd\x9e\x0f\x0a\x6e\xc8\xe8\xf6\xa1\xee\x99\xad\xad\x4b\xd4\x4c\x01\x75\x4a\x65\x7b\x7e\x89\xd2\x16\xff\x39\x1c\x42\x7c\x42\x2f\xe2\x29\x5f\xa4\xb5\xcb\xff\xe9\x5a\x11\x79\x4a\x6b\x5d\x1f\x21\x64\x6f\x0b\x83\x97\xc3\x78\x97\x38\x1a\x07\xa3\xc6\xb4\x6d\x16\xee\x16\xd9\x76\xa4\xe7\xa0\x75\xf9\xd4\x60\xec\x87\xbb\x1d\xc9\x91\xe1\x7e\x38\xc9\xe4\x15\x13\x88\x02\xe5\x6e\xeb\xb9\x49\xdf\xfa\x07\x9a\x7e\xcd\xea\x07\xda\xf1\x66\xf8\x5b\xc4\xd6\x19\x0a\x74\x3d\xd0\x9e\x78\xfa\x08\x1a\x32\xfa\x26\x82\x7f\xed\x51\x74\xc6\x30\
|
|||
|
},
|
|||
|
"/{{.File.Package}}_micro_http.pb.go.tmpl": &vfsgen۰CompressedFileInfo{
|
|||
|
name: "{{.File.Package}}_micro_http.pb.go.tmpl",
|
|||
|
modTime: time.Date(2021, 1, 8, 12, 50, 4, 963084783, time.UTC),
|
|||
|
uncompressedSize: 6871,
|
|||
|
|
|||
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff\xcc\x58\xcb\x6f\xdb\x36\x18\x3f\x8b\x7f\xc5\x57\x21\x28\xa4\x41\xa6\x0f\xbb\xa5\xf0\xa1\x08\x5a\x6c\xc3\xd2\x16\xc9\xb0\x4b\x51\x04\xac\xfc\xd9\x16\x22\x51\x0a\x45\x3b\x29\x14\xfe\xef\x03\x1f\x92\x25\x59\xb6\xe5\x3a\xd9\xd6\x43\x13\x91\xdf\xfb\xf9\x63\xa6\x53\xb8\xca\xe7\x08\x4b\xe4\x28\x98\xc4\x39\x7c\xff\x01\x85\xc8\x65\x1e\x4f\x96\xc8\x27\x59\x12\x8b\x9c\x4c\xa7\x50\xe6\x6b\x11\xe3\x25\x54\x15\xfd\x98\xa4\x48\x3f\xb1\x0c\x95\x22\x05\x8b\xef\xd9\x12\xa1\xaa\x96\xf9\x97\xfb\xe5\x9f\xac\x94\x1f\x52\xcc\x90\x4b\x30\x74\xf0\x0c\x65\x91\x26\xf2\xbd\x10\xec\x07\xf8\xef\x7c\x78\x86\x94\x95\x52\x29\x42\x92\xac\xc8\x85\x84\x80\x78\x7e\x9c\x73\x89\x4f\xd2\x27\xc4\x33\x1a\xef\xe2\x34\xd1\x32\xfc\x65\x22\x57\xeb\xef\x34\xce\xb3\xe9\x9a\x27\xa5\x64\xf1\xfd\x24\x17\xcb\xa9\xa1\x9a\x6e\x7e\x9d\x5a\x42\x1f\x6a\xc6\x12\xc5\x06\xc5\x08\x46\x4b\xe8\x77\x15\xde\xad\xa4\x2c\x8e\x30\x4f\x2c\xe9\x44\x93\xfa\x24\x24\x64\xc3\x04\x04\x04\x00\xe0\x0e\xda\x46\xd0\xcf\x85\x4c\x72\xde\xb9\xb1\xbc\xf5\x4d\x48\x48\x55\x4d\xe0\xc2\x44\xea\x72\xe6\x42\xa6\x94\x3d\xbd\x45\xb1\x49\x62\xd4\x91\x36\x97\xee\xdb\x84\x1e\x9e\x41\x8a\x24\xbb\x5d\x2f\x16\xc9\x13\xf8\xee\xca\xd7\xbc\x44\xfe\x28\x74\x42\x3a\xfc\xcf\x90\xe6\x8f\x28\x3e\x26\x42\xc7\xde\xdd\x40\x29\xc5\x3a\x96\x50\x19\x13\xe3\xae\x89\x57\xe6\x87\xb9\xe1\x5a\x42\x29\x45\xc2\x97\x44\x11\x5d\x0d\xd7\x9a\x12\x5c\x92\x4a\xb9\x5e\x2c\xcc\xf1\x27\x7c\xec\xea\xdd\xaa\x8a\x05\x32\x89\xc0\xf1\x11\xca\xfa\xc8\x6a\x58\xac\x79\x7c\x80\x33\x68\x69\x8f\x86\x8d\x0c\x61\x9f\x56\xeb\x99\x40\xb9\x16\x1c\xde\x8e\x89\x49\x15\x5f\x42\x1c\x19\x97\x2f\xcd\xff\x4a\xbb\x5c\x55\x82\xf1\x25\x6e\x73\x70\x8d\x72\x95\xcf\xeb\x4c\x09\x7c\xb0\x07\x26\x4f\xbf\xf3\x62\x2d\xff\xd2\x49\xe8\x16\x3f\x6d\x15\xbf\x65\x2b\x8b\x16\xdb\xe7\xb5\x1c\xc7\x97\x2c\x80\xf1\x39\x04\x3c\x97\xe0\x22\x70\x2b\x05\xb2\x2c\xe1\xcb\x10\x02\x63\x23\x8a\xd6\xd1\x44\x29\x1b\xe5\x20\x86\x5f\xc6\x04\x41\x07\xd4\x75\x78\x10\xcb\x27\x70\xed\x49\xaf\xec\xcf\x08\x04\x3e\x18\x49\x8d\xe3\x4a\x45\x90\x17\xb2\x04\x4a\x69\x37\x43\x2c\x4d\x6d\xb5\x87\x10\xf4\xd3\x74\xd7\xa8\x71\xc7\x11\xa0\x10\xb9\x08\x4d\xe2\xb4\xaf\x98\x96\xa8\x1d\xee\xfb\xf9\x0a\x3e\xbd\x9a\xf9\xff\x9b\xf0\x1b\x96\xba\xe6\x34\x4b\xdf\x5a\x3e\xd7\x03\x44\xb7\x8c\xab\xb3\x20\x2f\x90\xb3\x22\xb1\x22\x80\x86\xf4\x06\xcb\x22\xe7\x25\x96\x35\x25\x0a\x91\xb1\x42\x57\x70\xc6\xee\x31\xc8\x58\xf1\xd5\x36\xeb\xb7\x84\x4b\x14\x0b\x16\x63\xa5\x22\xa8\x2a\x48\x91\x1f\x12\xa8\x54\xd8\xa8\xb6\xdd\x76\x71\x1f\xc1\xc5\x46\x8b\x1e\x6d\xc7\x57\xbf\xaa\x2e\xee\x95\xf2\xbf\xc1\x4c\x37\xfc\x04\x82\x25\xca\x6b\x2c\x4b\xb6\x44\xd3\x5b\x76\xd8\x5e\x6c\xe8\x6d\xbc\xc2\x8c\xd1\x3f\xca\x9c\xbb\x5f\x6f\x70\x11\xda\xe9\xaa\x54\xb5\x8d\x43\x2f\x2c\xad\x4f\x6e\x62\x7e\x39\x03\x56\x14\xc8\xe7\x81\xfe\x8c\xcc\x0d\xc0\xce\x5a\x71\x33\x23\xf0\xab\x4a\x7f\xfe\x8d\xe2\x3b\x50\xa5\xfc\x30\x82\xbd\x2c\x5f\x98\x5c\xd5\x0c\xfa\x77\xc7\xe0\xe8\xc7\x27\x69\x48\xf6\x07\x9d\xfc\x6b\x56\x04\x36\x72\x1d\xa9\x2d\x1f\x43\xd2\x28\xca\xc5\xd0\x74\x09\x76\x66\x90\xe3\x2c\xcd\x81\xa9\x32\x1d\xa3\x98\xc6\xd4\xd2\xe8\xa2\x8e\xcc\xf7\x27\x7c\xbc\xc1\x87\x35\x96\x32\x88\xa9\x9e\xb6\x11\xf8\xfd\x2e\xa3\x4d\x33\xf8\x91\x99\xe1\xad\xaa\xaf\x54\x18\xd9\x2c\x50\x4a\x6d\xf9\x24\x0b\xa3\xf0\xcd\x0c\x78\x92\xba\x05\xd0\xac\x00\x9e\xa4\xc6\x1e\x73\xaa\xb6\x9e\x0d\x8d\x52\x50\x0a\xfe\xdd\x7f\x6d\xfb\x2f\x67\x2e\x7e\xf4\x56\x57\x96\xc0\x87\xf0\xdd\xa9\x8e\x21\x9f\xbb\x54\x9c\xb4\x01\xeb\x70\x57\xd6\x00\x15\x69\xe9\xad\x81\x56\xcb\x2c\x4d\xd7\xbf\xed\x0e\x95\xaa\xe9\xc6\x3a\xe7\x7a\x04\x9d\x91\x71\xed\x79\xa4\x95\x8d\x4b\xf4\xfe\x88\x34\x37\x56\xd6\xd6\x25\x13\x25\xb3\xe4\x4f\xab\xf1\xd1\x38\xab\x71\xa7\x0b\xb8\x6c\x78\xbb\x80\xc6\x2a\x20\xca\x1a\x63\xd6\xfc\xc0\x8a\x37\xe5\xda\x37\xb2\xd9\x32\x4f\xe3\xb6\x4c\x63\x55\x08\x37\x18\x6f\xde\xf3\xf9\x55\x9a\x97\x18\x1c\x5c\x14\x5e\x36\x9c\x73\xcf\x25\xfc\x89\x6a\x59\xd7\xe5\x32\xc8\x42\xe2\xb9\x14\xcd\xea\x14\x79\x86\x4c\x53\x39\x55\xc4\x53\xa4\x21\x7b\xb3\x25\xeb\xe7\xd0\x53\xc4\x23\xf5\x69\x66\xb3\x67\xc1\x90\xcd\xde\x4f\x7b\x5e\xbb\x6c\x1c\xec\xc2\xc5\
|
|||
|
},
|
|||
|
}
|
|||
|
fs["/"].(*vfsgen۰DirInfo).entries = []os.FileInfo{
|
|||
|
fs["/{{.File.Package}}_micro.pb.go.tmpl"].(os.FileInfo),
|
|||
|
fs["/{{.File.Package}}_micro_grpc.pb.go.tmpl"].(os.FileInfo),
|
|||
|
fs["/{{.File.Package}}_micro_http.pb.go.tmpl"].(os.FileInfo),
|
|||
|
}
|
|||
|
|
|||
|
return fs
|
|||
|
}()
|
|||
|
|
|||
|
type vfsgen۰FS map[string]interface{}
|
|||
|
|
|||
|
func (fs vfsgen۰FS) Open(path string) (http.File, error) {
|
|||
|
path = pathpkg.Clean("/" + path)
|
|||
|
f, ok := fs[path]
|
|||
|
if !ok {
|
|||
|
return nil, &os.PathError{Op: "open", Path: path, Err: os.ErrNotExist}
|
|||
|
}
|
|||
|
|
|||
|
switch f := f.(type) {
|
|||
|
case *vfsgen۰CompressedFileInfo:
|
|||
|
gr, err := gzip.NewReader(bytes.NewReader(f.compressedContent))
|
|||
|
if err != nil {
|
|||
|
// This should never happen because we generate the gzip bytes such that they are always valid.
|
|||
|
panic("unexpected error reading own gzip compressed bytes: " + err.Error())
|
|||
|
}
|
|||
|
return &vfsgen۰CompressedFile{
|
|||
|
vfsgen۰CompressedFileInfo: f,
|
|||
|
gr: gr,
|
|||
|
}, nil
|
|||
|
case *vfsgen۰DirInfo:
|
|||
|
return &vfsgen۰Dir{
|
|||
|
vfsgen۰DirInfo: f,
|
|||
|
}, nil
|
|||
|
default:
|
|||
|
// This should never happen because we generate only the above types.
|
|||
|
panic(fmt.Sprintf("unexpected type %T", f))
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// vfsgen۰CompressedFileInfo is a static definition of a gzip compressed file.
|
|||
|
type vfsgen۰CompressedFileInfo struct {
|
|||
|
name string
|
|||
|
modTime time.Time
|
|||
|
compressedContent []byte
|
|||
|
uncompressedSize int64
|
|||
|
}
|
|||
|
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Readdir(count int) ([]os.FileInfo, error) {
|
|||
|
return nil, fmt.Errorf("cannot Readdir from file %s", f.name)
|
|||
|
}
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Stat() (os.FileInfo, error) { return f, nil }
|
|||
|
|
|||
|
func (f *vfsgen۰CompressedFileInfo) GzipBytes() []byte {
|
|||
|
return f.compressedContent
|
|||
|
}
|
|||
|
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Name() string { return f.name }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Size() int64 { return f.uncompressedSize }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Mode() os.FileMode { return 0444 }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) ModTime() time.Time { return f.modTime }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) IsDir() bool { return false }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Sys() interface{} { return nil }
|
|||
|
|
|||
|
// vfsgen۰CompressedFile is an opened compressedFile instance.
|
|||
|
type vfsgen۰CompressedFile struct {
|
|||
|
*vfsgen۰CompressedFileInfo
|
|||
|
gr *gzip.Reader
|
|||
|
grPos int64 // Actual gr uncompressed position.
|
|||
|
seekPos int64 // Seek uncompressed position.
|
|||
|
}
|
|||
|
|
|||
|
func (f *vfsgen۰CompressedFile) Read(p []byte) (n int, err error) {
|
|||
|
if f.grPos > f.seekPos {
|
|||
|
// Rewind to beginning.
|
|||
|
err = f.gr.Reset(bytes.NewReader(f.compressedContent))
|
|||
|
if err != nil {
|
|||
|
return 0, err
|
|||
|
}
|
|||
|
f.grPos = 0
|
|||
|
}
|
|||
|
if f.grPos < f.seekPos {
|
|||
|
// Fast-forward.
|
|||
|
_, err = io.CopyN(ioutil.Discard, f.gr, f.seekPos-f.grPos)
|
|||
|
if err != nil {
|
|||
|
return 0, err
|
|||
|
}
|
|||
|
f.grPos = f.seekPos
|
|||
|
}
|
|||
|
n, err = f.gr.Read(p)
|
|||
|
f.grPos += int64(n)
|
|||
|
f.seekPos = f.grPos
|
|||
|
return n, err
|
|||
|
}
|
|||
|
func (f *vfsgen۰CompressedFile) Seek(offset int64, whence int) (int64, error) {
|
|||
|
switch whence {
|
|||
|
case io.SeekStart:
|
|||
|
f.seekPos = 0 + offset
|
|||
|
case io.SeekCurrent:
|
|||
|
f.seekPos += offset
|
|||
|
case io.SeekEnd:
|
|||
|
f.seekPos = f.uncompressedSize + offset
|
|||
|
default:
|
|||
|
panic(fmt.Errorf("invalid whence value: %v", whence))
|
|||
|
}
|
|||
|
return f.seekPos, nil
|
|||
|
}
|
|||
|
func (f *vfsgen۰CompressedFile) Close() error {
|
|||
|
return f.gr.Close()
|
|||
|
}
|
|||
|
|
|||
|
// vfsgen۰DirInfo is a static definition of a directory.
|
|||
|
type vfsgen۰DirInfo struct {
|
|||
|
name string
|
|||
|
modTime time.Time
|
|||
|
entries []os.FileInfo
|
|||
|
}
|
|||
|
|
|||
|
func (d *vfsgen۰DirInfo) Read([]byte) (int, error) {
|
|||
|
return 0, fmt.Errorf("cannot Read from directory %s", d.name)
|
|||
|
}
|
|||
|
func (d *vfsgen۰DirInfo) Close() error { return nil }
|
|||
|
func (d *vfsgen۰DirInfo) Stat() (os.FileInfo, error) { return d, nil }
|
|||
|
|
|||
|
func (d *vfsgen۰DirInfo) Name() string { return d.name }
|
|||
|
func (d *vfsgen۰DirInfo) Size() int64 { return 0 }
|
|||
|
func (d *vfsgen۰DirInfo) Mode() os.FileMode { return 0755 | os.ModeDir }
|
|||
|
func (d *vfsgen۰DirInfo) ModTime() time.Time { return d.modTime }
|
|||
|
func (d *vfsgen۰DirInfo) IsDir() bool { return true }
|
|||
|
func (d *vfsgen۰DirInfo) Sys() interface{} { return nil }
|
|||
|
|
|||
|
// vfsgen۰Dir is an opened dir instance.
|
|||
|
type vfsgen۰Dir struct {
|
|||
|
*vfsgen۰DirInfo
|
|||
|
pos int // Position within entries for Seek and Readdir.
|
|||
|
}
|
|||
|
|
|||
|
func (d *vfsgen۰Dir) Seek(offset int64, whence int) (int64, error) {
|
|||
|
if offset == 0 && whence == io.SeekStart {
|
|||
|
d.pos = 0
|
|||
|
return 0, nil
|
|||
|
}
|
|||
|
return 0, fmt.Errorf("unsupported Seek in directory %s", d.name)
|
|||
|
}
|
|||
|
|
|||
|
func (d *vfsgen۰Dir) Readdir(count int) ([]os.FileInfo, error) {
|
|||
|
if d.pos >= len(d.entries) && count > 0 {
|
|||
|
return nil, io.EOF
|
|||
|
}
|
|||
|
if count <= 0 || count > len(d.entries)-d.pos {
|
|||
|
count = len(d.entries) - d.pos
|
|||
|
}
|
|||
|
e := d.entries[d.pos : d.pos+count]
|
|||
|
d.pos += count
|
|||
|
return e, nil
|
|||
|
}
|