Code optimized (#523)
* optimized markdown generator * optimized markdown generator * optimized markdown generator * add more comment * add comment * add comment * add comments for rpc tool * add comments for model tool * add comments for model tool * add comments for model tool * add comments for config tool * add comments for config tool * add comments * add comments * add comments * add comments * add comment * remove rpc main head info * add comment * optimized Co-authored-by: anqiansong <anqiansong@xiaoheiban.cn>
This commit is contained in:
@@ -12,11 +12,15 @@ import (
|
||||
)
|
||||
|
||||
type (
|
||||
// TokenStream defines a token
|
||||
TokenStream interface {
|
||||
GetStart() antlr.Token
|
||||
GetStop() antlr.Token
|
||||
GetParser() antlr.Parser
|
||||
}
|
||||
|
||||
// ApiVisitor wraps api.BaseApiParserVisitor to call methods which has prefix Visit to
|
||||
// visit node from the api syntax
|
||||
ApiVisitor struct {
|
||||
api.BaseApiParserVisitor
|
||||
debug bool
|
||||
@@ -25,8 +29,10 @@ type (
|
||||
infoFlag bool
|
||||
}
|
||||
|
||||
// VisitorOption defines a function with argument ApiVisitor
|
||||
VisitorOption func(v *ApiVisitor)
|
||||
|
||||
// Spec describes api spec
|
||||
Spec interface {
|
||||
Doc() []Expr
|
||||
Comment() Expr
|
||||
@@ -34,6 +40,7 @@ type (
|
||||
Equal(v interface{}) bool
|
||||
}
|
||||
|
||||
// Expr describes ast expression
|
||||
Expr interface {
|
||||
Prefix() string
|
||||
Line() int
|
||||
@@ -47,6 +54,7 @@ type (
|
||||
}
|
||||
)
|
||||
|
||||
// NewApiVisitor creates an instance for ApiVisitor
|
||||
func NewApiVisitor(options ...VisitorOption) *ApiVisitor {
|
||||
v := &ApiVisitor{
|
||||
log: console.NewColorConsole(),
|
||||
@@ -66,12 +74,14 @@ func (v *ApiVisitor) panic(expr Expr, msg string) {
|
||||
panic(errString)
|
||||
}
|
||||
|
||||
// WithVisitorPrefix returns a VisitorOption wrap with specified prefix
|
||||
func WithVisitorPrefix(prefix string) VisitorOption {
|
||||
return func(v *ApiVisitor) {
|
||||
v.prefix = prefix
|
||||
}
|
||||
}
|
||||
|
||||
// WithVisitorDebug returns a debug VisitorOption
|
||||
func WithVisitorDebug() VisitorOption {
|
||||
return func(v *ApiVisitor) {
|
||||
v.debug = true
|
||||
@@ -84,6 +94,7 @@ type defaultExpr struct {
|
||||
start, stop int
|
||||
}
|
||||
|
||||
// NewTextExpr creates a default instance for Expr
|
||||
func NewTextExpr(v string) *defaultExpr {
|
||||
return &defaultExpr{
|
||||
v: v,
|
||||
@@ -201,6 +212,7 @@ func (e *defaultExpr) IsNotNil() bool {
|
||||
return e != nil
|
||||
}
|
||||
|
||||
// EqualDoc compares whether the element literals in two Spec are equal
|
||||
func EqualDoc(spec1, spec2 Spec) bool {
|
||||
if spec1 == nil {
|
||||
return spec2 == nil
|
||||
|
||||
Reference in New Issue
Block a user