1 /*******************************************************************************
2 * Copyright (c) 2011-2012 Ericsson, Ecole Polytechnique de Montreal and others
4 * All rights reserved. This program and the accompanying materials are made
5 * available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
9 * Contributors: Matthew Khouzam - Initial API and implementation
10 * Contributors: Simon Marchi - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.linuxtools
.ctf
.core
.event
.types
;
16 * <b><u>ArrayDeclaration</u></b>
18 public class ArrayDeclaration
implements IDeclaration
{
20 // ------------------------------------------------------------------------
22 // ------------------------------------------------------------------------
24 private final int length
;
25 private final IDeclaration elemType
;
27 // ------------------------------------------------------------------------
29 // ------------------------------------------------------------------------
31 public ArrayDeclaration(int length
, IDeclaration elemType
) {
33 this.elemType
= elemType
;
36 // ------------------------------------------------------------------------
37 // Getters/Setters/Predicates
38 // ------------------------------------------------------------------------
40 public IDeclaration
getElementType() {
44 public int getLength() {
49 public long getAlignment() {
50 long retVal
= this.getElementType().getAlignment();
53 // ------------------------------------------------------------------------
55 // ------------------------------------------------------------------------
58 public ArrayDefinition
createDefinition(IDefinitionScope definitionScope
,
60 return new ArrayDefinition(this, definitionScope
, fieldName
);
64 public String
toString() {
65 /* Only used for debugging */
66 return "[declaration] array[" + Integer
.toHexString(hashCode()) + ']'; //$NON-NLS-1$