Versions in this module Expand all Collapse all v1 v1.0.1 Jan 30, 2023 v1.0.0 Jan 28, 2023 Changes in this version + func ParseBindingFields(lex *SvcLexer) (fields []*Field, custom []*Field, err error) + type Field struct + Description string + Kind string + Name string + Value string + type HTTPBinding struct + CustomHTTPPattern []*Field + Description string + Fields []*Field + func ParseHttpBindings(lex *SvcLexer) ([]*HTTPBinding, error) + type Method struct + Description string + HTTPBindings []*HTTPBinding + Name string + RequestType string + ResponseType string + func ParseMethod(lex *SvcLexer) (*Method, error) + type RuneReader struct + ContentLen int + Contents []rune + LineNo int + RunePos int + func NewRuneReader(r io.Reader) *RuneReader + func (self *RuneReader) ReadRune() (rune, error) + func (self *RuneReader) UnreadRune() error + type ScanUnit struct + BraceLevel int + InRpcBody bool + InRpcDefinition bool + LineNo int + Value []rune + func BuildScanUnit(rr *RuneReader) (*ScanUnit, error) + func (self ScanUnit) String() string + type Service struct + Methods []*Method + Name string + func ParseService(lex *SvcLexer) (*Service, error) + type SvcLexer struct + Buf []*TokenGroup + Scn *SvcScanner + func NewSvcLexer(r io.Reader) *SvcLexer + func (self *SvcLexer) GetLineNumber() int + func (self *SvcLexer) GetPosition() int + func (self *SvcLexer) GetToken() (Token, string) + func (self *SvcLexer) GetTokenIgnoreCommentAndWhitespace() (Token, string) + func (self *SvcLexer) GetTokenIgnoreWhitespace() (Token, string) + func (self *SvcLexer) UnGetToPosition(position int) error + func (self *SvcLexer) UnGetToken() error + type SvcScanner struct + BraceLevel int + Buf []*ScanUnit + InBody bool + InDefinition bool + R *RuneReader + UnitPos int + func NewSvcScanner(r io.Reader) *SvcScanner + func (self *SvcScanner) FastForward() error + func (self *SvcScanner) GetLineNumber() int + func (self *SvcScanner) ReadUnit() ([]rune, error) + func (self *SvcScanner) UnReadToPosition(position int) error + func (self *SvcScanner) UnreadUnit() error + type Token int + const CLOSE_BRACE + const CLOSE_PAREN + const COMMENT + const EOF + const IDENT + const ILLEGAL + const OPEN_BRACE + const OPEN_PAREN + const STRING_LITERAL + const SYMBOL + const WHITESPACE + func (self Token) String() string + type TokenGroup struct + func NewTokenGroup(scn *SvcScanner) *TokenGroup + func (self TokenGroup) String() string