Repository URL to install this package:
|
Version:
1.0 ▾
|
!<arch>
__.PKGDEF 0 0 0 644 23278 `
go object linux amd64 go1.6 X:none
build id "9c827383eaccbc9b70cc4396a143e9838324d9a8"
$$
package parse
import runtime "runtime"
import fmt "fmt"
import strconv "strconv"
import utf8 "unicode/utf8"
import strings "strings"
import unicode "unicode"
import bytes "bytes"
type @"".Pos int
func (@"".p·2 @"".Pos) Position () (? @"".Pos) { return @"".p·2 }
type @"".NodeType int
func (@"".t·2 @"".NodeType) Type () (? @"".NodeType) { return @"".t·2 }
type @"".ListNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Nodes []@"".Node }
func (@"".l·2 *@"".ListNode "esc:0x1a") Copy () (? @"".Node)
func (@"".l·2 *@"".ListNode "esc:0x1a") CopyList () (? *@"".ListNode)
func (@"".l·2 *@"".ListNode "esc:0x9") String () (? string)
func (@"".l·1 *@"".ListNode "esc:0x9") @"".append (@"".n·2 @"".Node) { @"".l·1.Nodes = append(@"".l·1.Nodes, @"".n·2) }
func (@"".l·2 *@"".ListNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".l·2.@"".tr }
type @"".stateFn func(? *@"".lexer) (? @"".stateFn)
type @"".itemType int
type @"".item struct { @"".typ @"".itemType; @"".pos @"".Pos; @"".val string }
func (@"".i·2 @"".item) String () (? string)
type @"".lexer struct { @"".name string; @"".input string; @"".leftDelim string; @"".rightDelim string; @"".state @"".stateFn; @"".pos @"".Pos; @"".start @"".Pos; @"".width @"".Pos; @"".lastPos @"".Pos; @"".items chan @"".item; @"".parenDepth int }
func (@"".l·2 *@"".lexer "esc:0x1") @"".accept (@"".valid·3 string) (? bool)
func (@"".l·1 *@"".lexer "esc:0x1") @"".acceptRun (@"".valid·2 string)
func (@"".l·3 *@"".lexer "esc:0x1") @"".atLeftDelim () (@"".delim·1 bool, @"".trimSpaces·2 bool) { if !@"strings".HasPrefix(@"".l·3.@"".input[@"".l·3.@"".pos:], @"".l·3.@"".leftDelim) { return bool(false), bool(false) }; @"".trimSpaces·2 = @"strings".HasPrefix(@"".l·3.@"".input[@"".l·3.@"".pos + @"".Pos(len(@"".l·3.@"".leftDelim)):], string("- ")); return bool(true), @"".trimSpaces·2 }
func (@"".l·3 *@"".lexer "esc:0x1") @"".atRightDelim () (@"".delim·1 bool, @"".trimSpaces·2 bool) { if @"strings".HasPrefix(@"".l·3.@"".input[@"".l·3.@"".pos:], @"".l·3.@"".rightDelim) { return bool(true), bool(false) }; if @"strings".HasPrefix(@"".l·3.@"".input[@"".l·3.@"".pos:], string(" -")) { if @"strings".HasPrefix(@"".l·3.@"".input[@"".l·3.@"".pos + @"".Pos(0x2):], @"".l·3.@"".rightDelim) { return bool(true), bool(true) } }; return bool(false), bool(false) }
func (@"".l·2 *@"".lexer "esc:0x1") @"".atTerminator () (? bool)
func (@"".l·1 *@"".lexer "esc:0x1") @"".backup () { @"".l·1.@"".pos -= @"".l·1.@"".width }
func (@"".l·1 *@"".lexer "esc:0x1") @"".drain ()
func (@"".l·1 *@"".lexer "esc:0x9") @"".emit (@"".t·2 @"".itemType) { @"".l·1.@"".items <- (@"".item{ @"".typ:@"".t·2, @"".pos:@"".l·1.@"".start, @"".val:@"".l·1.@"".input[@"".l·1.@"".start:@"".l·1.@"".pos] }); @"".l·1.@"".start = @"".l·1.@"".pos }
func (@"".l·2 *@"".lexer "esc:0x1") @"".errorf (@"".format·3 string "esc:0x9", @"".args·4 ...interface {} "esc:0x9") (? @"".stateFn)
func (@"".l·1 *@"".lexer "esc:0x1") @"".ignore () { @"".l·1.@"".start = @"".l·1.@"".pos }
func (@"".l·2 *@"".lexer "esc:0x1") @"".lineNumber () (? int)
func (@"".l·2 *@"".lexer "esc:0x1") @"".next () (? rune)
func (@"".l·2 *@"".lexer "esc:0x1") @"".nextItem () (? @"".item) { var @"".item·3 @"".item; @"".item·3 = <-@"".l·2.@"".items; @"".l·2.@"".lastPos = @"".item·3.@"".pos; return @"".item·3 }
func (@"".l·2 *@"".lexer "esc:0x1") @"".peek () (? rune)
func (@"".l·1 *@"".lexer) @"".run ()
func (@"".l·2 *@"".lexer "esc:0x1") @"".scanNumber () (? bool)
type @"".TextNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Text []byte }
func (@"".t·2 *@"".TextNode "esc:0xa") Copy () (? @"".Node) { return (&@"".TextNode{ @"".tr:@"".t·2.@"".tr, NodeType:@"".NodeType(0x0), Pos:@"".t·2.Pos, Text:append(([]byte{ }), @"".t·2.Text...) }) }
func (@"".t·2 *@"".TextNode "esc:0x9") String () (? string)
func (@"".t·2 *@"".TextNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".t·2.@"".tr }
type @"".VariableNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Ident []string }
func (@"".v·2 *@"".VariableNode "esc:0xa") Copy () (? @"".Node) { return (&@"".VariableNode{ @"".tr:@"".v·2.@"".tr, NodeType:@"".NodeType(0x12), Pos:@"".v·2.Pos, Ident:append(([]string{ }), @"".v·2.Ident...) }) }
func (@"".v·2 *@"".VariableNode "esc:0x32") String () (? string)
func (@"".v·2 *@"".VariableNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".v·2.@"".tr }
type @"".CommandNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Args []@"".Node }
func (@"".c·2 *@"".CommandNode "esc:0x1a") Copy () (? @"".Node)
func (@"".c·2 *@"".CommandNode "esc:0x9") String () (? string)
func (@"".c·1 *@"".CommandNode "esc:0x9") @"".append (@"".arg·2 @"".Node) { @"".c·1.Args = append(@"".c·1.Args, @"".arg·2) }
func (@"".c·2 *@"".CommandNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".c·2.@"".tr }
type @"".PipeNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Line int; Decl []*@"".VariableNode; Cmds []*@"".CommandNode }
func (@"".p·2 *@"".PipeNode "esc:0x1a") Copy () (? @"".Node)
func (@"".p·2 *@"".PipeNode "esc:0x1a") CopyPipe () (? *@"".PipeNode)
func (@"".p·2 *@"".PipeNode "esc:0x5a") String () (? string)
func (@"".p·1 *@"".PipeNode "esc:0x9") @"".append (@"".command·2 *@"".CommandNode) { @"".p·1.Cmds = append(@"".p·1.Cmds, @"".command·2) }
func (@"".p·2 *@"".PipeNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".p·2.@"".tr }
type @"".ActionNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Line int; Pipe *@"".PipeNode }
func (@"".a·2 *@"".ActionNode "esc:0xa") Copy () (? @"".Node)
func (@"".a·2 *@"".ActionNode "esc:0x9") String () (? string)
func (@"".a·2 *@"".ActionNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".a·2.@"".tr }
type @"".DotNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree }
func (@"".d·2 *@"".DotNode "esc:0xa") Copy () (? @"".Node) { return @"".d·2.@"".tr.@"".newDot(@"".d·2.Pos) }
func (@"".d·2 *@"".DotNode "esc:0x1") String () (? string) { return string(".") }
func (@"".d·2 *@"".DotNode "esc:0x1") Type () (? @"".NodeType) { return @"".NodeType(0x5) }
func (@"".d·2 *@"".DotNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".d·2.@"".tr }
type @"".NilNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree }
func (@"".n·2 *@"".NilNode "esc:0xa") Copy () (? @"".Node) { return @"".n·2.@"".tr.@"".newNil(@"".n·2.Pos) }
func (@"".n·2 *@"".NilNode "esc:0x1") String () (? string) { return string("nil") }
func (@"".n·2 *@"".NilNode "esc:0x1") Type () (? @"".NodeType) { return @"".NodeType(0xc) }
func (@"".n·2 *@"".NilNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".n·2.@"".tr }
type @"".FieldNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Ident []string }
func (@"".f·2 *@"".FieldNode "esc:0xa") Copy () (? @"".Node) { return (&@"".FieldNode{ @"".tr:@"".f·2.@"".tr, NodeType:@"".NodeType(0x8), Pos:@"".f·2.Pos, Ident:append(([]string{ }), @"".f·2.Ident...) }) }
func (@"".f·2 *@"".FieldNode "esc:0x1") String () (? string)
func (@"".f·2 *@"".FieldNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".f·2.@"".tr }
type @"".ChainNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Node @"".Node; Field []string }
func (@"".c·1 *@"".ChainNode "esc:0x9") Add (@"".field·2 string)
func (@"".c·2 *@"".ChainNode "esc:0xa") Copy () (? @"".Node) { return (&@"".ChainNode{ @"".tr:@"".c·2.@"".tr, NodeType:@"".NodeType(0x3), Pos:@"".c·2.Pos, Node:@"".c·2.Node, Field:append(([]string{ }), @"".c·2.Field...) }) }
func (@"".c·2 *@"".ChainNode "esc:0x9") String () (? string)
func (@"".c·2 *@"".ChainNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".c·2.@"".tr }
type @"".BoolNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; True bool }
func (@"".b·2 *@"".BoolNode "esc:0xa") Copy () (? @"".Node) { return @"".b·2.@"".tr.@"".newBool(@"".b·2.Pos, @"".b·2.True) }
func (@"".b·2 *@"".BoolNode "esc:0x1") String () (? string) { if @"".b·2.True { return string("true") }; return string("false") }
func (@"".b·2 *@"".BoolNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".b·2.@"".tr }
type @"".NumberNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; IsInt bool; IsUint bool; IsFloat bool; IsComplex bool; Int64 int64; Uint64 uint64; Float64 float64; Complex128 complex128; Text string }
func (@"".n·2 *@"".NumberNode "esc:0x9") Copy () (? @"".Node) { var @"".nn·3 *@"".NumberNode; @"".nn·3 = new(@"".NumberNode); *@"".nn·3 = *@"".n·2; return @"".nn·3 }
func (@"".n·2 *@"".NumberNode "esc:0x22") String () (? string) { return @"".n·2.Text }
func (@"".n·1 *@"".NumberNode "esc:0x1") @"".simplifyComplex () { @"".n·1.IsFloat = (imag(@"".n·1.Complex128)) == float64(0); if @"".n·1.IsFloat { @"".n·1.Float64 = real(@"".n·1.Complex128); @"".n·1.IsInt = float64(int64(@"".n·1.Float64)) == @"".n·1.Float64; if @"".n·1.IsInt { @"".n·1.Int64 = int64(@"".n·1.Float64) }; @"".n·1.IsUint = float64(uint64(@"".n·1.Float64)) == @"".n·1.Float64; if @"".n·1.IsUint { @"".n·1.Uint64 = uint64(@"".n·1.Float64) } } }
func (@"".n·2 *@"".NumberNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".n·2.@"".tr }
type @"".StringNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Quoted string; Text string }
func (@"".s·2 *@"".StringNode "esc:0xa") Copy () (? @"".Node) { return @"".s·2.@"".tr.@"".newString(@"".s·2.Pos, @"".s·2.Quoted, @"".s·2.Text) }
func (@"".s·2 *@"".StringNode "esc:0x22") String () (? string) { return @"".s·2.Quoted }
func (@"".s·2 *@"".StringNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".s·2.@"".tr }
type @"".endNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree }
func (@"".e·2 *@"".endNode "esc:0xa") Copy () (? @"".Node) { return @"".e·2.@"".tr.@"".newEnd(@"".e·2.Pos) }
func (@"".e·2 *@"".endNode "esc:0x1") String () (? string) { return string("{{end}}") }
func (@"".e·2 *@"".endNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".e·2.@"".tr }
type @"".elseNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Line int }
func (@"".e·2 *@"".elseNode "esc:0xa") Copy () (? @"".Node) { return @"".e·2.@"".tr.@"".newElse(@"".e·2.Pos, @"".e·2.Line) }
func (@"".e·2 *@"".elseNode "esc:0x1") String () (? string) { return string("{{else}}") }
func (@"".e·2 *@"".elseNode "esc:0x1") Type () (? @"".NodeType) { return @"".NodeType(0x6) }
func (@"".e·2 *@"".elseNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".e·2.@"".tr }
type @"".BranchNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Line int; Pipe *@"".PipeNode; List *@"".ListNode; ElseList *@"".ListNode }
func (@"".b·2 *@"".BranchNode "esc:0xa") Copy () (? @"".Node)
func (@"".b·2 *@"".BranchNode "esc:0x9") String () (? string)
func (@"".b·2 *@"".BranchNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".b·2.@"".tr }
type @"".IfNode struct { ? @"".BranchNode }
func (@"".i·2 *@"".IfNode "esc:0xa") Copy () (? @"".Node)
type @"".RangeNode struct { ? @"".BranchNode }
func (@"".r·2 *@"".RangeNode "esc:0xa") Copy () (? @"".Node)
type @"".WithNode struct { ? @"".BranchNode }
func (@"".w·2 *@"".WithNode "esc:0xa") Copy () (? @"".Node)
type @"".TemplateNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Line int; Name string; Pipe *@"".PipeNode }
func (@"".t·2 *@"".TemplateNode "esc:0xa") Copy () (? @"".Node)
func (@"".t·2 *@"".TemplateNode "esc:0x9") String () (? string)
func (@"".t·2 *@"".TemplateNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".t·2.@"".tr }
type @"".Tree struct { Name string; ParseName string; Root *@"".ListNode; @"".text string; @"".funcs []map[string]interface {}; @"".lex *@"".lexer; @"".token [3]@"".item; @"".peekCount int; @"".vars []string; @"".treeSet map[string]*@"".Tree }
func (@"".t·2 *@"".Tree "esc:0xa") Copy () (? *@"".Tree)
func (@"".t·3 *@"".Tree "esc:0x9") ErrorContext (@"".n·4 @"".Node) (@"".location·1 string, @"".context·2 string)
func (@"".t·3 *@"".Tree) Parse (@"".text·4 string, @"".leftDelim·5 string, @"".rightDelim·6 string, @"".treeSet·7 map[string]*@"".Tree, @"".funcs·8 ...map[string]interface {}) (@"".tree·1 *@"".Tree, @"".err·2 error)
func (@"".t·2 *@"".Tree) @"".action () (@"".n·1 @"".Node)
func (@"".t·1 *@"".Tree) @"".add ()
func (@"".t·1 *@"".Tree "esc:0x1") @"".backup () { @"".t·1.@"".peekCount++ }
func (@"".t·1 *@"".Tree "esc:0x1") @"".backup2 (@"".t1·2 @"".item) { @"".t·1.@"".token[int(0x1)] = @"".t1·2; @"".t·1.@"".peekCount = int(0x2) }
func (@"".t·1 *@"".Tree "esc:0x1") @"".backup3 (@"".t2·2 @"".item, @"".t1·3 @"".item) { @"".t·1.@"".token[int(0x1)] = @"".t1·3; @"".t·1.@"".token[int(0x2)] = @"".t2·2; @"".t·1.@"".peekCount = int(0x3) }
func (@"".t·2 *@"".Tree) @"".blockControl () (? @"".Node)
func (@"".t·1 *@"".Tree "esc:0x9") @"".checkPipeline (@"".pipe·2 *@"".PipeNode "esc:0x9", @"".context·3 string)
func (@"".t·2 *@"".Tree) @"".command () (? *@"".CommandNode)
func (@"".t·2 *@"".Tree) @"".elseControl () (? @"".Node)
func (@"".t·2 *@"".Tree) @"".endControl () (? @"".Node)
func (@"".t·1 *@"".Tree "esc:0x9") @"".error (@"".err·2 error)
func (@"".t·1 *@"".Tree "esc:0x9") @"".errorf (@"".format·2 string, @"".args·3 ...interface {} "esc:0x9")
func (@"".t·2 *@"".Tree "esc:0x2a") @"".expect (@"".expected·3 @"".itemType, @"".context·4 string) (? @"".item)
func (@"".t·2 *@"".Tree "esc:0x2a") @"".expectOneOf (@"".expected1·3 @"".itemType, @"".expected2·4 @"".itemType, @"".context·5 string) (? @"".item)
func (@"".t·2 *@"".Tree "esc:0x1") @"".hasFunction (@"".name·3 string "esc:0x1") (? bool)
func (@"".t·2 *@"".Tree) @"".ifControl () (? @"".Node)
func (@"".t·3 *@"".Tree) @"".itemList () (@"".list·1 *@"".ListNode, @"".next·2 @"".Node)
func (@"".t·2 *@"".Tree) @"".newAction (@"".pos·3 @"".Pos, @"".line·4 int, @"".pipe·5 *@"".PipeNode) (? *@"".ActionNode) { return (&@"".ActionNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x1), Pos:@"".pos·3, Line:@"".line·4, Pipe:@"".pipe·5 }) }
func (@"".t·2 *@"".Tree) @"".newBool (@"".pos·3 @"".Pos, @"".true·4 bool) (? *@"".BoolNode) { return (&@"".BoolNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x2), Pos:@"".pos·3, True:@"".true·4 }) }
func (@"".t·2 *@"".Tree) @"".newChain (@"".pos·3 @"".Pos, @"".node·4 @"".Node) (? *@"".ChainNode) { return (&@"".ChainNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x3), Pos:@"".pos·3, Node:@"".node·4 }) }
func (@"".t·2 *@"".Tree) @"".newCommand (@"".pos·3 @"".Pos) (? *@"".CommandNode) { return (&@"".CommandNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x4), Pos:@"".pos·3 }) }
func (@"".t·2 *@"".Tree) @"".newDot (@"".pos·3 @"".Pos) (? *@"".DotNode) { return (&@"".DotNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x5), Pos:@"".pos·3 }) }
func (@"".t·2 *@"".Tree) @"".newElse (@"".pos·3 @"".Pos, @"".line·4 int) (? *@"".elseNode) { return (&@"".elseNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x6), Pos:@"".pos·3, Line:@"".line·4 }) }
func (@"".t·2 *@"".Tree) @"".newEnd (@"".pos·3 @"".Pos) (? *@"".endNode) { return (&@"".endNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x7), Pos:@"".pos·3 }) }
func (@"".t·2 *@"".Tree) @"".newField (@"".pos·3 @"".Pos, @"".ident·4 string) (? *@"".FieldNode)
func (@"".t·2 *@"".Tree) @"".newIf (@"".pos·3 @"".Pos, @"".line·4 int, @"".pipe·5 *@"".PipeNode, @"".list·6 *@"".ListNode, @"".elseList·7 *@"".ListNode) (? *@"".IfNode) { return (&@"".IfNode{ BranchNode:(@"".BranchNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0xa), Pos:@"".pos·3, Line:@"".line·4, Pipe:@"".pipe·5, List:@"".list·6, ElseList:@"".elseList·7 }) }) }
func (@"".t·2 *@"".Tree) @"".newList (@"".pos·3 @"".Pos) (? *@"".ListNode) { return (&@"".ListNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0xb), Pos:@"".pos·3 }) }
func (@"".t·2 *@"".Tree) @"".newNil (@"".pos·3 @"".Pos) (? *@"".NilNode) { return (&@"".NilNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0xc), Pos:@"".pos·3 }) }
func (@"".t·3 *@"".Tree) @"".newNumber (@"".pos·4 @"".Pos, @"".text·5 string, @"".typ·6 @"".itemType) (? *@"".NumberNode, ? error)
func (@"".t·2 *@"".Tree) @"".newPipeline (@"".pos·3 @"".Pos, @"".line·4 int, @"".decl·5 []*@"".VariableNode) (? *@"".PipeNode) { return (&@"".PipeNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0xe), Pos:@"".pos·3, Line:@"".line·4, Decl:@"".decl·5 }) }
func (@"".t·2 *@"".Tree) @"".newRange (@"".pos·3 @"".Pos, @"".line·4 int, @"".pipe·5 *@"".PipeNode, @"".list·6 *@"".ListNode, @"".elseList·7 *@"".ListNode) (? *@"".RangeNode) { return (&@"".RangeNode{ BranchNode:(@"".BranchNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0xf), Pos:@"".pos·3, Line:@"".line·4, Pipe:@"".pipe·5, List:@"".list·6, ElseList:@"".elseList·7 }) }) }
func (@"".t·2 *@"".Tree) @"".newString (@"".pos·3 @"".Pos, @"".orig·4 string, @"".text·5 string) (? *@"".StringNode) { return (&@"".StringNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x10), Pos:@"".pos·3, Quoted:@"".orig·4, Text:@"".text·5 }) }
func (@"".t·2 *@"".Tree) @"".newTemplate (@"".pos·3 @"".Pos, @"".line·4 int, @"".name·5 string, @"".pipe·6 *@"".PipeNode) (? *@"".TemplateNode) { return (&@"".TemplateNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x11), Pos:@"".pos·3, Line:@"".line·4, Name:@"".name·5, Pipe:@"".pipe·6 }) }
func (@"".t·2 *@"".Tree) @"".newText (@"".pos·3 @"".Pos, @"".text·4 string "esc:0x1") (? *@"".TextNode) { return (&@"".TextNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x0), Pos:@"".pos·3, Text:([]byte)(@"".text·4) }) }
func (@"".t·2 *@"".Tree) @"".newVariable (@"".pos·3 @"".Pos, @"".ident·4 string) (? *@"".VariableNode)
func (@"".t·2 *@"".Tree) @"".newWith (@"".pos·3 @"".Pos, @"".line·4 int, @"".pipe·5 *@"".PipeNode, @"".list·6 *@"".ListNode, @"".elseList·7 *@"".ListNode) (? *@"".WithNode) { return (&@"".WithNode{ BranchNode:(@"".BranchNode{ @"".tr:@"".t·2, NodeType:@"".NodeType(0x13), Pos:@"".pos·3, Line:@"".line·4, Pipe:@"".pipe·5, List:@"".list·6, ElseList:@"".elseList·7 }) }) }
func (@"".t·2 *@"".Tree "esc:0x22") @"".next () (? @"".item) { if @"".t·2.@"".peekCount > int(0x0) { @"".t·2.@"".peekCount-- } else { @"".t·2.@"".token[int(0x0)] = @"".t·2.@"".lex.@"".nextItem() }; return @"".t·2.@"".token[@"".t·2.@"".peekCount] }
func (@"".t·2 *@"".Tree "esc:0x22") @"".nextNonSpace () (@"".token·1 @"".item)
func (@"".t·2 *@"".Tree) @"".operand () (? @"".Node)
func (@"".t·2 *@"".Tree) @"".parse () (@"".next·1 @"".Node)
func (@"".t·6 *@"".Tree) @"".parseControl (@"".allowElseIf·7 bool, @"".context·8 string) (@"".pos·1 @"".Pos, @"".line·2 int, @"".pipe·3 *@"".PipeNode, @"".list·4 *@"".ListNode, @"".elseList·5 *@"".ListNode)
func (@"".t·1 *@"".Tree) @"".parseDefinition ()
func (@"".t·2 *@"".Tree "esc:0x9") @"".parseTemplateName (@"".token·3 @"".item, @"".context·4 string) (@"".name·1 string)
func (@"".t·2 *@"".Tree "esc:0x22") @"".peek () (? @"".item) { if @"".t·2.@"".peekCount > int(0x0) { return @"".t·2.@"".token[@"".t·2.@"".peekCount - int(0x1)] }; @"".t·2.@"".peekCount = int(0x1); @"".t·2.@"".token[int(0x0)] = @"".t·2.@"".lex.@"".nextItem(); return @"".t·2.@"".token[int(0x0)] }
func (@"".t·2 *@"".Tree "esc:0x22") @"".peekNonSpace () (@"".token·1 @"".item)
func (@"".t·2 *@"".Tree) @"".pipeline (@"".context·3 string) (@"".pipe·1 *@"".PipeNode)
func (@"".t·1 *@"".Tree "esc:0x1") @"".popVars (@"".n·2 int) { @"".t·1.@"".vars = @"".t·1.@"".vars[:@"".n·2] }
func (@"".t·2 *@"".Tree) @"".rangeControl () (? @"".Node)
func (@"".t·1 *@"".Tree "esc:0x1") @"".recover (@"".errp·2 *error "esc:0x1")
func (@"".t·1 *@"".Tree "esc:0x1") @"".startParse (@"".funcs·2 []map[string]interface {}, @"".lex·3 *@"".lexer, @"".treeSet·4 map[string]*@"".Tree) { @"".t·1.Root = nil; @"".t·1.@"".lex = @"".lex·3; @"".t·1.@"".vars = ([]string{ int(0x0):string("$") }); @"".t·1.@"".funcs = @"".funcs·2; @"".t·1.@"".treeSet = @"".treeSet·4 }
func (@"".t·1 *@"".Tree "esc:0x1") @"".stopParse () { @"".t·1.@"".lex = nil; @"".t·1.@"".vars = nil; @"".t·1.@"".funcs = nil; @"".t·1.@"".treeSet = nil }
func (@"".t·2 *@"".Tree) @"".templateControl () (? @"".Node)
func (@"".t·2 *@"".Tree) @"".term () (? @"".Node)
func (@"".t·2 *@"".Tree) @"".textOrAction () (? @"".Node)
func (@"".t·1 *@"".Tree "esc:0x9") @"".unexpected (@"".token·2 @"".item, @"".context·3 string)
func (@"".t·2 *@"".Tree) @"".useVar (@"".pos·3 @"".Pos, @"".name·4 string) (? @"".Node)
func (@"".t·2 *@"".Tree) @"".withControl () (? @"".Node)
type @"".Node interface { Copy() (? @"".Node); Position() (? @"".Pos); String() (? string); Type() (? @"".NodeType); @"".tree() (? *@"".Tree) }
const @"".NodeText @"".NodeType = 0x0
const @"".NodeAction @"".NodeType = 0x1
const @"".NodeBool @"".NodeType = 0x2
const @"".NodeChain @"".NodeType = 0x3
const @"".NodeCommand @"".NodeType = 0x4
const @"".NodeDot @"".NodeType = 0x5
const @"".NodeField @"".NodeType = 0x8
const @"".NodeIdentifier @"".NodeType = 0x9
const @"".NodeIf @"".NodeType = 0xa
const @"".NodeList @"".NodeType = 0xb
const @"".NodeNil @"".NodeType = 0xc
const @"".NodeNumber @"".NodeType = 0xd
const @"".NodePipe @"".NodeType = 0xe
const @"".NodeRange @"".NodeType = 0xf
const @"".NodeString @"".NodeType = 0x10
const @"".NodeTemplate @"".NodeType = 0x11
const @"".NodeVariable @"".NodeType = 0x12
const @"".NodeWith @"".NodeType = 0x13
type @"".IdentifierNode struct { ? @"".NodeType; ? @"".Pos; @"".tr *@"".Tree; Ident string }
func (@"".i·2 *@"".IdentifierNode "esc:0xa") Copy () (? @"".Node) { return @"".NewIdentifier(@"".i·2.Ident).SetTree(@"".i·2.@"".tr).SetPos(@"".i·2.Pos) }
func (@"".i·2 *@"".IdentifierNode "esc:0x12") SetPos (@"".pos·3 @"".Pos) (? *@"".IdentifierNode) { @"".i·2.Pos = @"".pos·3; return @"".i·2 }
func (@"".i·2 *@"".IdentifierNode "esc:0x12") SetTree (@"".t·3 *@"".Tree) (? *@"".IdentifierNode) { @"".i·2.@"".tr = @"".t·3; return @"".i·2 }
func (@"".i·2 *@"".IdentifierNode "esc:0x22") String () (? string) { return @"".i·2.Ident }
func (@"".i·2 *@"".IdentifierNode "esc:0x22") @"".tree () (? *@"".Tree) { return @"".i·2.@"".tr }
func @"".NewIdentifier (@"".ident·2 string) (? *@"".IdentifierNode) { return (&@"".IdentifierNode{ NodeType:@"".NodeType(0x9), Ident:@"".ident·2 }) }
func @"".Parse (@"".name·3 string, @"".text·4 string, @"".leftDelim·5 string, @"".rightDelim·6 string, @"".funcs·7 ...map[string]interface {}) (@"".treeSet·1 map[string]*@"".Tree, @"".err·2 error)
func @"".New (@"".name·2 string, @"".funcs·3 ...map[string]interface {}) (? *@"".Tree)
func @"".IsEmptyTree (@"".n·2 @"".Node) (? bool)
func @"".init ()
func @"strings".HasPrefix (@"strings".s·2 string "esc:0x1", @"strings".prefix·3 string "esc:0x1") (? bool) { return len(@"strings".s·2) >= len(@"strings".prefix·3) && @"strings".s·2[int(0x0):len(@"strings".prefix·3)] == @"strings".prefix·3 }
const @"".leftTrimMarker = "- "
const @"".rightTrimMarker = " -"
const @"".trimMarkerLen @"".Pos = 0x2
const @"".nodeElse @"".NodeType = 0x6
const @"".nodeEnd @"".NodeType = 0x7
$$
_go_.o 0 0 0 644 762234 `
go object linux amd64 go1.6 X:none
!
go13ld
fmt.astrings.aunicode.aunicode/utf8.abytes.astrconv.aruntime.a þ"".item.String dH% H;aq Hìp1ÛH$ H$ H\$xHûu H H$ HDŽ$ HÄpÃH\$xHû u%H$ H$ H$ H$ HÄpÃH\$xHûõ 1ÛH\$HH\$PH\$HHû Ó HÇD$` HÇD$h H\$XH H$H\$xH\$HD$HÇD$ è HL$HD$ H\$XHL$8HHD$@= uZHCH H$HÇD$ H\$XH\$H\$`H\$H\$hH\$ è HL$(HD$0H$ H$ HÄpÃLCL$HD$è 떉é&ÿÿÿH$ Hû
õ 1ÛH\$HH\$PH\$HHû Ó HÇD$` HÇD$h H\$XH H$H\$xH\$HD$HÇD$ è HL$HD$ H\$XHL$8HHD$@= uZHCH H$HÇD$ H\$XH\$H\$`H\$H\$hH\$ è HL$(HD$0H$ H$ HÄpÃLCL$HD$è 떉é&ÿÿÿ1ÛH\$HH\$PH\$HHû Ó HÇD$` HÇD$h H\$XH H$H\$xH\$HD$HÇD$ è HL$HD$ H\$XHL$8HHD$@= uZHCH H$HÇD$ H\$XH\$H\$`H\$H\$hH\$ è HL$(HD$0H$ H$ HÄpÃLCL$HD$è 떉é&ÿÿÿè érüÿÿÌÌ*
n go.string."EOF" type.string Ô runtime.convT2E (runtime.writeBarrier ´ go.string."<%s>" fmt.Sprintf ö .runtime.writebarrierptr type.string â runtime.convT2E ¦ (runtime.writeBarrier  (go.string."%.10q..." ¢ fmt.Sprintf
.runtime.writebarrierptr type.string Ì runtime.convT2E (runtime.writeBarrier ¬ go.string."%q"
fmt.Sprintf î
.runtime.writebarrierptr 0runtime.morestack_noctxt `à "".autotmp_0018 "type.interface {} "".autotmp_0017 (type.[1]interface {} "".autotmp_0015 *type.*[1]interface {} "".autotmp_0014 &type.[]interface {} "".autotmp_0013 "type.interface {} "".autotmp_0012 (type.[1]interface {} "".autotmp_0010 *type.*[1]interface {} "".autotmp_0009 &type.[]interface {} "".autotmp_0008 o"type.interface {} "".autotmp_0007 O(type.[1]interface {} "".autotmp_0004 /&type.[]interface {} "".autotmp_0003 type.string "".autotmp_0002 type.string "".~r0 @type.string "".i type."".item Tà<ßà/ßàèßàßàôßàß 4,) %õõõ ( é`1Ö1Ä1 Tgclocals·9df3813653c3d900e14b10077026f425 Tgclocals·5ef976c2593056b9243adf402ae9d952 L$GOROOT/src/text/template/parse/lex.goþ "".(*lexer).next à àdH% H;a Hì0HD$8HHHXHH9Ë|HÇ@X ÇD$@ÿÿÿÿHÄ0ÃHhHL@L9ÅwSLHI)èIø tM)LL$ L$LD$(LD$è HD$8T$HL$HHXHHHHhXHÍHhHT$@HÄ0Ãè è éQÿÿÿÌ
à >unicode/utf8.DecodeRuneInString ¾ $runtime.panicslice Ì 0runtime.morestack_noctxt ` "".autotmp_0022 type."".Pos "".autotmp_0021 type.string "".~r0 type.int32 "".l type.*"".lexer `&_`__`_ ° ,ö
D
oA Tgclocals·3f5c1f818fa7055d0400cecd34057162 Tgclocals·23e8278e2b69a3a75fa59b23c49ed6ad L$GOROOT/src/text/template/parse/lex.goþ "".(*lexer).peek dH% H;av3HìH\$H$è T$HD$L@HHhXI)èL@HT$ HÄÃè ë·ÌÌÌÌÌÌÌ
: "".(*lexer).next 0runtime.morestack_noctxt "".~r0 type.int32 "".l type.*"".lexer . P
4 Tgclocals·3f5c1f818fa7055d0400cecd34057162 Tgclocals·33cdeccccebe80329f1fdbee7f5874cb L$GOROOT/src/text/template/parse/lex.goþ$"".(*lexer).backup @ @HL$LAHHiXI)èLAHÃÌÌÌÌÌÌÌÌÌÌÌ "".l type.*"".lexer Tgclocals·87d20ce1b58390b294df80b886db78bf Tgclocals·33cdeccccebe80329f1fdbee7f5874cb L$GOROOT/src/text/template/parse/lex.goþ "".(*lexer).emit À ÀdH% H;a» HìHHD$PHPPL@HLHM9È L9Â LHI)ÐIø tM1ÛH\$(H\$0H\$8H\$@H\$XH\$(HXPH\$0LL$LL$8LD$ LD$@H H$HhhHl$H\$(H\$è HD$PHø t
HhHHhPHÄHÉ ëïè è é(ÿÿÿÌÌÌÌÌÌÌÌ
"type.chan "".item Î "runtime.chansend1 $runtime.panicslice 0runtime.morestack_noctxt "".autotmp_0028 ?type."".item "".autotmp_0027 _type.string "".t type."".itemType "".l type.*"".lexer « à "¦ ¦! Tgclocals·32bd5c6dc84e3e86dd35593b3922d3aa Tgclocals·0c41800cb8f0534ce5db566773ead421 L$GOROOT/src/text/template/parse/lex.goþ$"".(*lexer).ignore @ @HD$Hø t HhHHhPÉ ëóÌÌÌÌÌÌÌÌ "".l type.*"".lexer ² Tgclocals·87d20ce1b58390b294df80b886db78bf Tgclocals·33cdeccccebe80329f1fdbee7f5874cb L$GOROOT/src/text/template/parse/lex.goþ$"".(*lexer).accept dH% H;aveHì H\$(H$è D$H\$0H$H\$8H\$D$è H\$Hû |
ÆD$@HÄ ÃHD$(L@HHhXI)èL@HÆD$@ HÄ Ãè ë
ÌÌÌÌÌ
: "".(*lexer).next z "strings.IndexRune ê 0runtime.morestack_noctxt @@ "".~r1 0type.bool "".valid type.string "".l type.*"".lexer @B?@?
¼9
d Tgclocals·0ebb2d1da58c1b4224bf5a7b370d7578 Tgclocals·33cdeccccebe80329f1fdbee7f5874cb L$GOROOT/src/text/template/parse/lex.goþ*"".(*lexer).acceptRun à àdH% H;avXHì H\$(H$è D$H\$0H$H\$8H\$D$è H\$Hû |ëÅHD$(L@HHhXI)èL@HHÄ Ãè ëÌÌ
: "".(*lexer).next z "strings.IndexRune Ð 0runtime.morestack_noctxt 0@ "".valid type.string "".l type.*"".lexer @S?
p Î;
T Tgclocals·3bb21ca8fe1d99a3e492463bd711418a Tgclocals·33cdeccccebe80329f1fdbee7f5874cb L$GOROOT/src/text/template/parse/lex.goþ,"".(*lexer).lineNumber dH% H;av`Hì8HL$@Hi`LAL9ÅwCLALD$(L$Hl$0Hl$H H\$HÇD$ è H\$ HÿÃH\$HHÄ8Ãè è ëÌÌÌÌÌÌÌÌÌÌ
~ go.string."\n" ¤ strings.Count Ò $runtime.panicslice à 0runtime.morestack_noctxt p "".autotmp_0036 type.string "".~r0 type.int "".l type.*"".lexer pTopo àW
Q/ Tgclocals·3f5c1f818fa7055d0400cecd34057162 Tgclocals·23e8278e2b69a3a75fa59b23c49ed6ad L$GOROOT/src/text/template/parse/lex.goþ$"".(*lexer).errorf à àdH% H;aÅ HìhH\$xH$H$ H\$H$ H\$H$ H\$H$ H\$ è HD$pHT$(HL$01ÛH\$HH\$PH\$XH\$`HÇD$H HXPH\$PHT$8HT$XHL$@HL$`H H$HhhHl$H\$HH\$è HDŽ$ HÄhÃè éÿÿÿÌÌÌÌÌÌÌÌÌÌÌÌÌÌ
ª fmt.Sprintf Î "type.chan "".item "runtime.chansend1 ² 0runtime.morestack_noctxt pÐ "".autotmp_0039 ?type."".item "".autotmp_0038 _type.string "".~r2 `type."".stateFn "".args 0&type.[]interface {} "".format type.string "".l type.*"".lexer ÐÀÏ ð ì° Tn. Tgclocals·e2e48659d066365ff31f925de75c53e8 Tgclocals·0c41800cb8f0534ce5db566773ead421 L$GOROOT/src/text/template/parse/lex.goþ("".(*lexer).nextItem à àdH% H;a Hì81ÛH\$HH\$PH\$XH\$`1ÛH\$H\$ H\$(H\$0H H$H\$@HkhHl$H\$H\$è Ht$HD$ HT$(HL$0H\$@HC`Ht$HHD$PHT$XHL$`HÄ8Ãè éUÿÿÿÌÌÌÌÌ
"type.chan "".item Î "runtime.chanrecv1 Ä 0runtime.morestack_noctxt Pp "".autotmp_0040 ?type."".item "".~r0 type."".item "".l type.*"".lexer po ° ú-R
fJ Tgclocals·3260b5c802f633fd6252c227878dd72a Tgclocals·44750c784da4dd430afdd97fea5c405a L$GOROOT/src/text/template/parse/lex.goþ""".(*lexer).drain dH% H;av_HìHH\$PHkhHl$ 1ÛH\$(H\$0H\$8H\$@H H$H\$ H\$H\$(H\$è ¶\$1í@8ëtëÎHÄHÃè ëÌÌÌÌÌÌÌÌÌÌÌ
t "type.chan "".item ® "runtime.chanrecv2 Þ 0runtime.morestack_noctxt "".autotmp_0042 ?type."".item "".autotmp_0041 O"type.chan "".item "".l type.*"".lexer Z V
V* Tgclocals·51fa0e13d53d6bad7f86670d3edaeac6 Tgclocals·3c7501754b8dd5b9d4c0ec4dcd002e17 L$GOROOT/src/text/template/parse/lex.goþ"".lex dH% H;aë Hì0H\$`Hû uH H\$XHÇD$` H\$pHû uH H\$hHÇD$p H H$HÇD$ è H\$H\$(H H$è HD$HÇHø [ WÀHÇðè GøHD$ Hl$@HhHl$8=
H(Hl$PHhHl$H=
Ù HhHl$`Hh(Hl$X=
Hh Hl$pHh8Hl$h= ujHh0Hø t\Hl$(= u5HhhHD$HD$Ç$ H HD$è H\$H\$xHÄ0ÃL@hL$Hl$è HD$ 붉 ë L@0L$Hl$è HD$ ëL@ L$Hl$è HD$ éJÿÿÿL@L$Hl$è HD$ éÿÿÿH$Hl$è HD$ éØþÿÿ éþÿÿè éøýÿÿÌÌÌÌÌÌÌÌ*
J go.string."{{" go.string."}}" ´ "type.chan "".item Ø runtime.makechan ú type."".lexer "runtime.newobject È runtime.duffzero (runtime.writeBarrier ¾ (runtime.writeBarrier ü (runtime.writeBarrier º (runtime.writeBarrier ê (runtime.writeBarrier ¨ $"".(*lexer).run·f ¼ runtime.newproc þ .runtime.writebarrierptr ¸ .runtime.writebarrierptr ê .runtime.writebarrierptr ¢ .runtime.writebarrierptr Ò .runtime.writebarrierptr þ 0runtime.morestack_noctxt ` "".autotmp_0045 type.*"".lexer "".autotmp_0044 "type.chan "".item "".l /type.*"".lexer "".~r4 type.*"".lexer "".right `type.string "".left @type.string "".input type.string "".name type.string `Ù_`_ 6é"t kØ!u Tgclocals·3224b90cbf3a5442e6e744325d26bd9c Tgclocals·78d2dd1e2cc212a33cda56e380c10c79 L$GOROOT/src/text/template/parse/lex.goþ"".(*lexer).run À ÀdH% H;a¹ HìHL$Hù H- = usHi@HY@1íH9ët5H$HQ@HÿÓHL$HD$Hù tC= u!HA@HY@1íH9ëuËHihH,$è HÄÃLA@L$HD$è HL$ëʉë¹LA@L$Hl$è HL$éuÿÿÿéZÿÿÿè é*ÿÿÿÌÌÌÌÌÌÌÌÌÌ
R "".lexText·f ^ (runtime.writeBarrier È (runtime.writeBarrier "runtime.closechan ´ .runtime.writebarrierptr î .runtime.writebarrierptr 0runtime.morestack_noctxt "".l type.*"".lexer t @ à (¼)*
# P Tgclocals·87d20ce1b58390b294df80b886db78bf Tgclocals·33cdeccccebe80329f1fdbee7f5874cb L$GOROOT/src/text/template/parse/lex.goþ"".lexText dH% HD$ H;Ak Hìà H¼$è HøHoHLGL9ÅA LOI)èIø tM)LÆHD$@Hø L@ HH(LL$`L$ LD$pH$ Ht$hHL$xH9ÎÛ H9ñË H9É
» L$° L$H$¸ HL$LD$HL$è H¼$è HD$@¶\$ Hـù
« 1É1 ù 1É<