Copyright (c) 2005, 2016 BEA Systems, Inc. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ SPDX-License-Identifier: EPL-2.0 Contributors: tyeung@bea.com - initial API and implementation
/******************************************************************************* * Copyright (c) 2005, 2016 BEA Systems, Inc. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 * * Contributors: * tyeung@bea.com - initial API and implementation *******************************************************************************/
package org.eclipse.jdt.internal.compiler.classfmt; import org.eclipse.jdt.internal.compiler.env.IBinaryAnnotation; public class AnnotationMethodInfoWithAnnotations extends AnnotationMethodInfo { private AnnotationInfo[] annotations; AnnotationMethodInfoWithAnnotations(MethodInfo methodInfo, Object defaultValue, AnnotationInfo[] annotations) { super(methodInfo, defaultValue); this.annotations = annotations; } @Override public IBinaryAnnotation[] getAnnotations() { return this.annotations; } @Override protected void initialize() { for (int i = 0, l = this.annotations == null ? 0 : this.annotations.length; i < l; i++) if (this.annotations[i] != null) this.annotations[i].initialize(); super.initialize(); } @Override protected void reset() { for (int i = 0, l = this.annotations == null ? 0 : this.annotations.length; i < l; i++) if (this.annotations[i] != null) this.annotations[i].reset(); super.reset(); } }