ResolvedMethodDeclaration.java revision 61db2ec5c6d8a2146b83bc92203c844b82d6f345
161db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti/*
261db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * Copyright 2016 Federico Tomassetti
361db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti *
461db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * Licensed under the Apache License, Version 2.0 (the "License");
561db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * you may not use this file except in compliance with the License.
661db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * You may obtain a copy of the License at
761db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti *
861db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * http://www.apache.org/licenses/LICENSE-2.0
961db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti *
1061db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * Unless required by applicable law or agreed to in writing, software
1161db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * distributed under the License is distributed on an "AS IS" BASIS,
1261db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1361db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * See the License for the specific language governing permissions and
1461db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * limitations under the License.
1561db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti */
1661db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti
1761db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassettipackage com.github.javaparser.resolution.declarations;
1861db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti
1961db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassettiimport com.github.javaparser.resolution.types.ResolvedType;
2061db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti
2161db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti/**
2261db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * A declaration of a method (either in an interface, a class, an enum or an annotation).
2361db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti *
2461db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti * @author Federico Tomassetti
2561db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti */
2661db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassettipublic interface ResolvedMethodDeclaration extends ResolvedMethodLikeDeclaration {
2761db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti
2861db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti    /**
2961db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     * The type of the value returned by the current method. This method can also be invoked
3061db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     * for methods returning void.
3161db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     */
3261db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti    ResolvedType getReturnType();
3361db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti
3461db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti    /**
3561db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     * Is the method abstract? All interface methods not marked as default are abstract.
3661db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     */
3761db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti    boolean isAbstract();
3861db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti
3961db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti    /**
4061db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     * Is this a default method?
4161db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     */
4261db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti    boolean isDefaultMethod();
4361db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti
4461db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti    /*
4561db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     * Is this method static?
4661db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti     */
4761db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti    boolean isStatic();
4861db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti
4961db2ec5c6d8a2146b83bc92203c844b82d6f345Federico Tomassetti}
50