Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (C) 2012 The Guava Authors
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   * http://www.apache.org/licenses/LICENSE-2.0
   *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package com.google.common.reflect;
 
 import static com.google.common.base.Preconditions.checkNotNull;
 
 
 
Represents a method or constructor parameter.

Author(s):
Ben Yu
Since:
14.0
 
 public final class Parameter implements AnnotatedElement {
 
   private final Invokable<?, ?> declaration;
   private final int position;
   private final TypeToken<?> type;
   private final ImmutableList<Annotationannotations;
 
       Invokable<?, ?> declaration,
       int position,
       TypeToken<?> type,
       Annotation[] annotations) {
     this. = declaration;
     this. = position;
     this. = type;
     this. = ImmutableList.copyOf(annotations);
   }

  
Returns the type of the parameter.
 
   public TypeToken<?> getType() {
     return ;
   }

  
Returns the Invokable that declares this parameter.
 
   public Invokable<?, ?> getDeclaringInvokable() {
     return ;
   }
 
   @Override public boolean isAnnotationPresent(Class<? extends AnnotationannotationType) {
     return getAnnotation(annotationType) != null;
   }
 
   @Override
   @Nullable
   public <A extends Annotation> A getAnnotation(Class<A> annotationType) {
     checkNotNull(annotationType);
     for (Annotation annotation : ) {
       if (annotationType.isInstance(annotation)) {
         return annotationType.cast(annotation);
       }
     }
     return null;
   }
 
   @Override public Annotation[] getAnnotations() {
     return getDeclaredAnnotations();
   }
 
     return .toArray(new Annotation[.size()]);
   }
 
   @Override public boolean equals(@Nullable Object obj) {
     if (obj instanceof Parameter) {
       Parameter that = (Parameterobj;
       return  == that.position && .equals(that.declaration);
     }
     return false;
   }
 
   @Override public int hashCode() {
     return ;
   }
 
  @Override public String toString() {
    return  + " arg" + ;
  }
New to GrepCode? Check out our FAQ X