MCPcopy Create free account

hub / github.com/elvin-du/tinyscript / functions

Functions285 in github.com/elvin-du/tinyscript

↓ 2 callersMethodGetElseBlock
()
parser/ast/stmt_if.go:66
↓ 2 callersMethodGetElseIfStmt
()
parser/ast/stmt_if.go:74
↓ 2 callersMethodGetEncodedOffset
()
gen/operand/offset.go:19
↓ 2 callersFunctionIfParse
IfStmt -> If(Expr) Block Tail
parser/ast/stmt_if.go:21
↓ 2 callersFunctionIsInstanceOfExpr
(instance interface{})
translator/util.go:8
↓ 2 callersFunctionIsLetter
(c string)
lexer/alphabet.go:12
↓ 2 callersFunctionIsLiteral
(c string)
lexer/alphabet.go:20
↓ 2 callersMethodIsType
()
lexer/token.go:75
↓ 2 callersMethodIsVariable
()
lexer/token.go:51
↓ 2 callersFunctionMakeAddressSymbol
(lexeme *lexer.Token, offset int)
translator/symbol/symbol.go:26
↓ 2 callersFunctionMakeAssignStmt
()
parser/ast/stmt_assign.go:9
↓ 2 callersFunctionMakeDeclareStmt
()
parser/ast/stmt_declare.go:15
↓ 2 callersFunctionMakeExpr
()
parser/ast/expr.go:11
↓ 2 callersFunctionMakeFactor
()
parser/ast/factor.go:13
↓ 2 callersFunctionMakeFuncDeclareStmt
()
parser/ast/stmt_func_declare.go:9
↓ 2 callersFunctionMakeIfStmt
()
parser/ast/stmt_if.go:9
↓ 2 callersMethodMakeOp
()
lexer/lexer.go:181
↓ 2 callersMethodMakeString
()
lexer/lexer.go:128
↓ 2 callersFunctionNewBNEInstruction
(r1, r2 *operand.Register, label string)
gen/instruction.go:55
↓ 2 callersFunctionNewFactor
(stream *PeekTokenStream)
parser/ast/factor.go:17
↓ 2 callersFunctionNewStream
(r io.Reader, et string)
lexer/util/stream.go:16
↓ 2 callersFunctionNewTAProgram
()
translator/taprogram.go:15
↓ 2 callersMethodPutBack
参数:n 表示退回多少个token
parser/ast/stream.go:44
↓ 2 callersMethodSetTypeLexeme
(*lexer.Token)
parser/ast/ast.go:25
↓ 2 callersMethodTranslateCallExpr
(program *TAProgram, node ast.ASTNode, table *symbol.Table)
translator/translator.go:196
↓ 2 callersFunctioncreateTokenStream
(src string)
parser/ast/stmt_if_test.go:23
↓ 2 callersMethodparse
()
parser/parser.go:25
↓ 1 callersMethodAddComment
当前指令的位置添加一行注释
gen/opcode_program.go:43
↓ 1 callersFunctionAnalyse
(source string)
lexer/lexer.go:32
↓ 1 callersFunctionCallExprParse
(factor ASTNode, stream *PeekTokenStream)
parser/ast/expr_call.go:16
↓ 1 callersMethodDecode
(code int)
vm/vm.go:42
↓ 1 callersMethodExec
(instr *gen.Instruction)
vm/vm.go:46
↓ 1 callersFunctionF
(stream *PeekTokenStream)
parser/ast/expr.go:93
↓ 1 callersMethodFetch
()
vm/vm.go:37
↓ 1 callersFunctionFromByte
(byteOpcode byte)
gen/opcode.go:45
↓ 1 callersFunctionFuncArgsParse
(stream *PeekTokenStream)
parser/ast/func_args.go:15
↓ 1 callersFunctionFuncDeclareStmtParse
(stream *PeekTokenStream)
parser/ast/stmt_func_declare.go:16
↓ 1 callersMethodFuncType
()
parser/ast/stmt_func_declare.go:48
↓ 1 callersMethodGenCall
(program *OpCodeProgram, ta *translator.TAInstruction)
gen/opcode_gen.go:118
↓ 1 callersMethodGenCopy
(program *OpCodeProgram, ta *translator.TAInstruction)
gen/opcode_gen.go:125
↓ 1 callersMethodGenFuncBegin
(program *OpCodeProgram, ta *translator.TAInstruction)
gen/opcode_gen.go:113
↓ 1 callersMethodGenGoTo
(program *OpCodeProgram, ta *translator.TAInstruction)
gen/opcode_gen.go:58
↓ 1 callersMethodGenIf
(program *OpCodeProgram, ta *translator.TAInstruction)
gen/opcode_gen.go:66
↓ 1 callersMethodGenPass
(program *OpCodeProgram, ta *translator.TAInstruction)
gen/opcode_gen.go:105
↓ 1 callersMethodGenReturn
(program *OpCodeProgram, ta *translator.TAInstruction)
gen/opcode_gen.go:86
↓ 1 callersMethodGenSP
(program *OpCodeProgram, ta *translator.TAInstruction)
gen/opcode_gen.go:96
↓ 1 callersMethodGet
(level int)
parser/ast/priority_table.go:22
↓ 1 callersMethodGetBlock
()
parser/ast/stmt_if.go:63
↓ 1 callersMethodGetExpr
()
parser/ast/stmt_if.go:59
↓ 1 callersMethodIsContain
(level int, key string)
parser/ast/priority_table.go:25
↓ 1 callersFunctionIsKeyword
(key string)
lexer/keywords.go:14
↓ 1 callersFunctionIsNil
(i interface{})
translator/util.go:13
↓ 1 callersMethodIsOperator
()
lexer/token.go:63
↓ 1 callersMethodIsValue
()
lexer/token.go:71
↓ 1 callersMethodIsValueType
标识变量的类型和函数的返回值类型;别的ast节点没有必要设置这个属性
parser/ast/ast.go:19
↓ 1 callersMethodLabel
()
parser/ast/ast.go:13
↓ 1 callersFunctionMakeCallExpr
()
parser/ast/expr_call.go:9
↓ 1 callersFunctionMakeForStmt
()
parser/ast/stmt_for.go:9
↓ 1 callersFunctionMakeFuncArgs
()
parser/ast/func_args.go:9
↓ 1 callersFunctionMakeImmediateSymbol
(lexeme *lexer.Token)
translator/symbol/symbol.go:34
↓ 1 callersFunctionMakeLabelSymbol
(label string, lexeme *lexer.Token)
translator/symbol/symbol.go:41
↓ 1 callersFunctionMakeProgram
()
parser/ast/program.go:9
↓ 1 callersFunctionMakeReturnStmt
()
parser/ast/stmt_return.go:9
↓ 1 callersFunctionMakeScalar
()
parser/ast/scalar.go:13
↓ 1 callersFunctionMakeVariable
()
parser/ast/variable.go:13
↓ 1 callersFunctionNewDeclareStmt
()
parser/ast/stmt_declare.go:9
↓ 1 callersFunctionNewOpCodeProgram
()
gen/opcode_program.go:15
↓ 1 callersFunctionNewPriorityTable
()
parser/ast/priority_table.go:9
↓ 1 callersFunctionNewScalar
(stream *PeekTokenStream)
parser/ast/scalar.go:9
↓ 1 callersFunctionNewStaticSymbolTable
()
translator/symbol/static_table.go:14
↓ 1 callersMethodPrint
(indent int)
parser/ast/ast.go:17
↓ 1 callersFunctionProgramParse
(stream *PeekTokenStream)
parser/ast/program.go:15
↓ 1 callersMethodRelabel
(program *OpCodeProgram, labelMap map[string]int)
gen/opcode_gen.go:71
↓ 1 callersFunctionReturnStmtParse
(stream *PeekTokenStream)
parser/ast/stmt_return.go:16
↓ 1 callersMethodSetEntry
(entry *int)
gen/opcode_program.go:38
↓ 1 callersMethodSetParent
(ASTNode)
parser/ast/ast.go:28
↓ 1 callersMethodSetStaticSymbols
根据符号表的内容,判断符号类型,如果是SYMBOL_IMMEDIATE,则加入静态符号表,以此来设置静态符号表的信息
translator/taprogram.go:42
↓ 1 callersMethodSimpleParse
Expr -> digit + Expr | d|igit digit -> 0|1|2|....|9
parser/parser.go:31
↓ 1 callersMethodSize
()
parser/ast/priority_table.go:19
↓ 1 callersMethodSize
()
translator/symbol/static_table.go:31
↓ 1 callersMethodString
()
translator/taprogram.go:32
↓ 1 callersFunctionTailParse
Tail -> else {Block} | else IfStmt | ⍷
parser/ast/stmt_if.go:43
↓ 1 callersMethodTranslateAssignStmt
(program *TAProgram, node ast.ASTNode, table *symbol.Table)
translator/translator.go:79
↓ 1 callersMethodTranslateDeclareStmt
(program *TAProgram, node ast.ASTNode, table *symbol.Table)
translator/translator.go:68
↓ 1 callersMethodTranslateFunctionDeclareStmt
(program *TAProgram, node ast.ASTNode, parent *symbol.Table)
translator/translator.go:173
↓ 1 callersMethodTranslateIfStmt
(program *TAProgram, node *ast.IfStmt, table *symbol.Table)
translator/translator.go:143
↓ 1 callersMethodTranslateReturnStmt
(program *TAProgram, node ast.ASTNode, table *symbol.Table)
translator/translator.go:227
↓ 1 callersMethodTypeLexeme
()
parser/ast/ast.go:18
↓ 1 callersFunctionU
(stream *PeekTokenStream)
parser/ast/expr.go:74
↓ 1 callersFunctionrace
(stream *PeekTokenStream, af ExprHOF, bf ExprHOF)
parser/ast/expr.go:128
↓ 1 callersMethodrun
()
vm/vm.go:114
MethodAdd
(symbol *Symbol)
translator/symbol/static_table.go:18
MethodAddChild
(node ASTNode)
parser/ast/ast.go:81
MethodChildren
()
parser/ast/ast.go:69
MethodGetChild
(index uint)
parser/ast/ast.go:72
MethodIsNumber
()
lexer/token.go:59
MethodIsValueType
()
parser/ast/ast.go:60
MethodLabel
()
parser/ast/ast.go:66
MethodLexeme
()
parser/ast/ast.go:54
FunctionNewJumpInstruction
(code *OpCode, offset int)
gen/instruction.go:29
← previousnext →101–200 of 285, ranked by callers