301 lines
		
	
	
		
			8.2 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			301 lines
		
	
	
		
			8.2 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Code generated by go-bindata.
 | |
| // sources:
 | |
| // views/blocks/block.tpl
 | |
| // views/header.tpl
 | |
| // views/index.tpl
 | |
| // DO NOT EDIT!
 | |
| 
 | |
| package test
 | |
| 
 | |
| import (
 | |
| 	"bytes"
 | |
| 	"compress/gzip"
 | |
| 	"fmt"
 | |
| 	"io"
 | |
| 	"io/ioutil"
 | |
| 	"os"
 | |
| 	"path/filepath"
 | |
| 	"strings"
 | |
| 	"time"
 | |
| 
 | |
| 	assetfs "github.com/elazarl/go-bindata-assetfs"
 | |
| )
 | |
| 
 | |
| func bindataRead(data []byte, name string) ([]byte, error) {
 | |
| 	gz, err := gzip.NewReader(bytes.NewBuffer(data))
 | |
| 	if err != nil {
 | |
| 		return nil, fmt.Errorf("Read %q: %v", name, err)
 | |
| 	}
 | |
| 
 | |
| 	var buf bytes.Buffer
 | |
| 	_, err = io.Copy(&buf, gz)
 | |
| 	clErr := gz.Close()
 | |
| 
 | |
| 	if err != nil {
 | |
| 		return nil, fmt.Errorf("Read %q: %v", name, err)
 | |
| 	}
 | |
| 	if clErr != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 
 | |
| 	return buf.Bytes(), nil
 | |
| }
 | |
| 
 | |
| type asset struct {
 | |
| 	bytes []byte
 | |
| 	info  os.FileInfo
 | |
| }
 | |
| 
 | |
| type bindataFileInfo struct {
 | |
| 	name    string
 | |
| 	size    int64
 | |
| 	mode    os.FileMode
 | |
| 	modTime time.Time
 | |
| }
 | |
| 
 | |
| func (fi bindataFileInfo) Name() string {
 | |
| 	return fi.name
 | |
| }
 | |
| 
 | |
| func (fi bindataFileInfo) Size() int64 {
 | |
| 	return fi.size
 | |
| }
 | |
| 
 | |
| func (fi bindataFileInfo) Mode() os.FileMode {
 | |
| 	return fi.mode
 | |
| }
 | |
| 
 | |
| func (fi bindataFileInfo) ModTime() time.Time {
 | |
| 	return fi.modTime
 | |
| }
 | |
| 
 | |
| func (fi bindataFileInfo) IsDir() bool {
 | |
| 	return false
 | |
| }
 | |
| 
 | |
| func (fi bindataFileInfo) Sys() interface{} {
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| var _viewsBlocksBlockTpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xaa\xae\x4e\x49\x4d\xcb\xcc\x4b\x55\x50\x4a\xca\xc9\x4f\xce\x56\xaa\xad\xe5\xb2\xc9\x30\xb4\xf3\x48\xcd\xc9\xc9\xd7\x51\x00\x8b\x15\x2b\xda\xe8\x67\x18\xda\x71\x55\x57\xa7\xe6\xa5\xd4\xd6\x02\x02\x00\x00\xff\xff\xfd\xa1\x7a\xf6\x32\x00\x00\x00")
 | |
| 
 | |
| func viewsBlocksBlockTplBytes() ([]byte, error) {
 | |
| 	return bindataRead(
 | |
| 		_viewsBlocksBlockTpl,
 | |
| 		"views/blocks/block.tpl",
 | |
| 	)
 | |
| }
 | |
| 
 | |
| func viewsBlocksBlockTpl() (*asset, error) {
 | |
| 	bytes, err := viewsBlocksBlockTplBytes()
 | |
| 	if err != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 
 | |
| 	info := bindataFileInfo{name: "views/blocks/block.tpl", size: 50, mode: os.FileMode(0o664), modTime: time.Unix(1541431067, 0)}
 | |
| 	a := &asset{bytes: bytes, info: info}
 | |
| 	return a, nil
 | |
| }
 | |
| 
 | |
| var _viewsHeaderTpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xaa\xae\x4e\x49\x4d\xcb\xcc\x4b\x55\x50\xca\x48\x4d\x4c\x49\x2d\x52\xaa\xad\xe5\xb2\xc9\x30\xb4\xf3\x48\xcd\xc9\xc9\xd7\x51\x48\x2c\x2e\x49\xac\xc8\x4c\x55\xb4\xd1\xcf\x30\xb4\xe3\xaa\xae\x4e\xcd\x4b\xa9\xad\x05\x04\x00\x00\xff\xff\xe4\x12\x47\x01\x34\x00\x00\x00")
 | |
| 
 | |
| func viewsHeaderTplBytes() ([]byte, error) {
 | |
| 	return bindataRead(
 | |
| 		_viewsHeaderTpl,
 | |
| 		"views/header.tpl",
 | |
| 	)
 | |
| }
 | |
| 
 | |
| func viewsHeaderTpl() (*asset, error) {
 | |
| 	bytes, err := viewsHeaderTplBytes()
 | |
| 	if err != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 
 | |
| 	info := bindataFileInfo{name: "views/header.tpl", size: 52, mode: os.FileMode(0o664), modTime: time.Unix(1541431067, 0)}
 | |
| 	a := &asset{bytes: bytes, info: info}
 | |
| 	return a, nil
 | |
| }
 | |
| 
 | |
| var _viewsIndexTpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\x8f\xbd\x8a\xc3\x30\x10\x84\x6b\xeb\x29\xe6\xfc\x00\x16\xb8\x3c\x16\x35\x77\xa9\x13\x88\x09\xa4\xf4\xcf\x12\x99\x48\x48\xd8\x82\x10\x84\xde\x3d\xc8\x8a\x8b\x90\x6a\xa4\xd9\x6f\xd8\x59\xfa\xf9\x3f\xfe\x75\xd7\xd3\x01\x3a\x58\xa3\x04\x15\x01\x48\x73\x3f\xe5\x07\x40\x61\x0e\x86\xd5\xc0\x7c\x73\x78\xb0\x19\x9d\x65\x04\xb6\xde\xf4\x81\x49\x96\x69\x8e\xc8\x3d\x43\x83\x9b\x9e\x4a\x88\x2a\xc6\x9d\x43\x3d\x18\x37\xde\xeb\x94\x3e\xdd\x1c\xe1\xe5\xcb\xde\xe0\x55\x6e\xd2\x04\x6f\x32\x20\x2a\xd2\xad\x8a\x11\x4d\x97\x57\x22\x25\x92\xba\x55\xa2\x22\xaf\xd0\xe9\x79\xc5\xbc\xe2\xec\x2c\x5f\xfa\xe5\x17\x99\x7b\x7f\x36\xd2\x97\x8a\xa5\x19\xc9\x72\xe7\x2b\x00\x00\xff\xff\xb2\x39\xca\x9f\xff\x00\x00\x00")
 | |
| 
 | |
| func viewsIndexTplBytes() ([]byte, error) {
 | |
| 	return bindataRead(
 | |
| 		_viewsIndexTpl,
 | |
| 		"views/index.tpl",
 | |
| 	)
 | |
| }
 | |
| 
 | |
| func viewsIndexTpl() (*asset, error) {
 | |
| 	bytes, err := viewsIndexTplBytes()
 | |
| 	if err != nil {
 | |
| 		return nil, err
 | |
| 	}
 | |
| 
 | |
| 	info := bindataFileInfo{name: "views/index.tpl", size: 255, mode: os.FileMode(0o664), modTime: time.Unix(1541434906, 0)}
 | |
| 	a := &asset{bytes: bytes, info: info}
 | |
| 	return a, nil
 | |
| }
 | |
| 
 | |
| // Asset loads and returns the asset for the given name.
 | |
| // It returns an error if the asset could not be found or
 | |
| // could not be loaded.
 | |
| func Asset(name string) ([]byte, error) {
 | |
| 	cannonicalName := strings.Replace(name, "\\", "/", -1)
 | |
| 	if f, ok := _bindata[cannonicalName]; ok {
 | |
| 		a, err := f()
 | |
| 		if err != nil {
 | |
| 			return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err)
 | |
| 		}
 | |
| 		return a.bytes, nil
 | |
| 	}
 | |
| 	return nil, fmt.Errorf("Asset %s not found", name)
 | |
| }
 | |
| 
 | |
| // MustAsset is like Asset but panics when Asset would return an error.
 | |
| // It simplifies safe initialization of global variables.
 | |
| func MustAsset(name string) []byte {
 | |
| 	a, err := Asset(name)
 | |
| 	if err != nil {
 | |
| 		panic("asset: Asset(" + name + "): " + err.Error())
 | |
| 	}
 | |
| 
 | |
| 	return a
 | |
| }
 | |
| 
 | |
| // AssetInfo loads and returns the asset info for the given name.
 | |
| // It returns an error if the asset could not be found or
 | |
| // could not be loaded.
 | |
| func AssetInfo(name string) (os.FileInfo, error) {
 | |
| 	cannonicalName := strings.Replace(name, "\\", "/", -1)
 | |
| 	if f, ok := _bindata[cannonicalName]; ok {
 | |
| 		a, err := f()
 | |
| 		if err != nil {
 | |
| 			return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err)
 | |
| 		}
 | |
| 		return a.info, nil
 | |
| 	}
 | |
| 	return nil, fmt.Errorf("AssetInfo %s not found", name)
 | |
| }
 | |
| 
 | |
| // AssetNames returns the names of the assets.
 | |
| func AssetNames() []string {
 | |
| 	names := make([]string, 0, len(_bindata))
 | |
| 	for name := range _bindata {
 | |
| 		names = append(names, name)
 | |
| 	}
 | |
| 	return names
 | |
| }
 | |
| 
 | |
| // _bindata is a table, holding each asset generator, mapped to its name.
 | |
| var _bindata = map[string]func() (*asset, error){
 | |
| 	"views/blocks/block.tpl": viewsBlocksBlockTpl,
 | |
| 	"views/header.tpl":       viewsHeaderTpl,
 | |
| 	"views/index.tpl":        viewsIndexTpl,
 | |
| }
 | |
| 
 | |
| // AssetDir returns the file names below a certain
 | |
| // directory embedded in the file by go-bindata.
 | |
| // For example if you run go-bindata on data/... and data contains the
 | |
| // following hierarchy:
 | |
| //     data/
 | |
| //       foo.txt
 | |
| //       img/
 | |
| //         a.png
 | |
| //         b.png
 | |
| // then AssetDir("data") would return []string{"foo.txt", "img"}
 | |
| // AssetDir("data/img") would return []string{"a.png", "b.png"}
 | |
| // AssetDir("foo.txt") and AssetDir("notexist") would return an error
 | |
| // AssetDir("") will return []string{"data"}.
 | |
| func AssetDir(name string) ([]string, error) {
 | |
| 	node := _bintree
 | |
| 	if len(name) != 0 {
 | |
| 		cannonicalName := strings.Replace(name, "\\", "/", -1)
 | |
| 		pathList := strings.Split(cannonicalName, "/")
 | |
| 		for _, p := range pathList {
 | |
| 			node = node.Children[p]
 | |
| 			if node == nil {
 | |
| 				return nil, fmt.Errorf("Asset %s not found", name)
 | |
| 			}
 | |
| 		}
 | |
| 	}
 | |
| 	if node.Func != nil {
 | |
| 		return nil, fmt.Errorf("Asset %s not found", name)
 | |
| 	}
 | |
| 	rv := make([]string, 0, len(node.Children))
 | |
| 	for childName := range node.Children {
 | |
| 		rv = append(rv, childName)
 | |
| 	}
 | |
| 	return rv, nil
 | |
| }
 | |
| 
 | |
| type bintree struct {
 | |
| 	Func     func() (*asset, error)
 | |
| 	Children map[string]*bintree
 | |
| }
 | |
| 
 | |
| var _bintree = &bintree{nil, map[string]*bintree{
 | |
| 	"views": {nil, map[string]*bintree{
 | |
| 		"blocks": {nil, map[string]*bintree{
 | |
| 			"block.tpl": {viewsBlocksBlockTpl, map[string]*bintree{}},
 | |
| 		}},
 | |
| 		"header.tpl": {viewsHeaderTpl, map[string]*bintree{}},
 | |
| 		"index.tpl":  {viewsIndexTpl, map[string]*bintree{}},
 | |
| 	}},
 | |
| }}
 | |
| 
 | |
| // RestoreAsset restores an asset under the given directory
 | |
| func RestoreAsset(dir, name string) error {
 | |
| 	data, err := Asset(name)
 | |
| 	if err != nil {
 | |
| 		return err
 | |
| 	}
 | |
| 	info, err := AssetInfo(name)
 | |
| 	if err != nil {
 | |
| 		return err
 | |
| 	}
 | |
| 	err = os.MkdirAll(_filePath(dir, filepath.Dir(name)), os.FileMode(0o755))
 | |
| 	if err != nil {
 | |
| 		return err
 | |
| 	}
 | |
| 	err = ioutil.WriteFile(_filePath(dir, name), data, info.Mode())
 | |
| 	if err != nil {
 | |
| 		return err
 | |
| 	}
 | |
| 	err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
 | |
| 	if err != nil {
 | |
| 		return err
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| // RestoreAssets restores an asset under the given directory recursively
 | |
| func RestoreAssets(dir, name string) error {
 | |
| 	children, err := AssetDir(name)
 | |
| 	// File
 | |
| 	if err != nil {
 | |
| 		return RestoreAsset(dir, name)
 | |
| 	}
 | |
| 	// Dir
 | |
| 	for _, child := range children {
 | |
| 		err = RestoreAssets(dir, filepath.Join(name, child))
 | |
| 		if err != nil {
 | |
| 			return err
 | |
| 		}
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| func _filePath(dir, name string) string {
 | |
| 	cannonicalName := strings.Replace(name, "\\", "/", -1)
 | |
| 	return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...)
 | |
| }
 | |
| 
 | |
| func assetFS() *assetfs.AssetFS {
 | |
| 	assetInfo := os.Stat
 | |
| 	for k := range _bintree.Children {
 | |
| 		return &assetfs.AssetFS{Asset: Asset, AssetDir: AssetDir, AssetInfo: assetInfo, Prefix: k}
 | |
| 	}
 | |
| 	panic("unreachable")
 | |
| }
 |