Exemplo n.º 1
0
        public override bool VisitInterfaceMethodDeclaration([NotNull] JavaParser.InterfaceMethodDeclarationContext context)
        {
            ++MethodCounter;
            Methods.Add(context.IDENTIFIER().GetText());

            return(true);
        }
Exemplo n.º 2
0
 public override void EnterInterfaceMethodDeclaration(JavaParser.InterfaceMethodDeclarationContext context)
 {
     ParseMethodFromContext(
         context.formalParameters(),
         context.typeTypeOrVoid(),
         context.qualifiedNameList(),
         context.IDENTIFIER().GetText(),
         context.GetFullText());
 }
Exemplo n.º 3
0
        public UstNode VisitInterfaceMethodDeclaration(JavaParser.InterfaceMethodDeclarationContext context)
        {
            JavaParser.TypeTypeOrVoidContext type = context.typeTypeOrVoid();
            ITerminalNode child0Terminal          = context.GetChild <ITerminalNode>(0);
            ITerminalNode identifier = context.IDENTIFIER();

            JavaParser.FormalParametersContext formalParameters = context.formalParameters();
            JavaParser.BlockContext            methodBody       = context.methodBody().block();

            MethodDeclaration result = ConvertMethodDeclaration(type, child0Terminal, identifier, formalParameters, null,
                                                                context.GetTextSpan());

            return(result);
        }
Exemplo n.º 4
0
        public override void EnterInterfaceMethodDeclaration(JavaParser.InterfaceMethodDeclarationContext context)
        {
            var tokens     = context.GetTokens(JavaParser.Identifier);
            var parameters = context.GetRuleContexts <JavaParser.FormalParametersContext>();

            foreach (var token in tokens)
            {
                if (Process != null)
                {
                    //打印方法名
                    Process(this, "Method : " + token.Symbol.Text + "(");
                }
            }
            foreach (var param in parameters)
            {
                if (Process != null)
                {
                    var paramListCtxs = param.GetRuleContexts <JavaParser.FormalParameterListContext>();
                    foreach (var paramListCtx in paramListCtxs)
                    {
                        var fpcs = paramListCtx.GetRuleContexts <JavaParser.FormalParameterContext>();
                        foreach (var fpc in fpcs)
                        {
                            var varIdCtxs = fpc.GetRuleContexts <JavaParser.VariableDeclaratorIdContext>();
                            foreach (var varIdCtx in varIdCtxs)
                            {
                                var varTokens = varIdCtx.GetTokens(JavaParser.Identifier);
                                foreach (var token in varTokens)
                                {
                                    //打印参数名
                                    Process(this, "    " + token.Symbol.Text + ",");
                                }
                            }
                        }
                    }
                }
            }
            foreach (var token in tokens)
            {
                if (Process != null)
                {
                    Process(this, ")");
                }
            }
        }