001 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
002 // for details. All rights reserved. Use of this source code is governed by a
003 // BSD-style license that can be found in the LICENSE file.
004
005 package com.google.dart.compiler.backend.js.ast;
006
007 /**
008 * Represents a javascript expression for array access.
009 */
010 public final class JsArrayAccess extends JsExpressionImpl {
011 private JsExpression arrayExpression;
012 private JsExpression indexExpression;
013
014 public JsArrayAccess() {
015 super();
016 }
017
018 public JsArrayAccess(JsExpression arrayExpression, JsExpression indexExpression) {
019 this.arrayExpression = arrayExpression;
020 this.indexExpression = indexExpression;
021 }
022
023 public JsExpression getArrayExpression() {
024 return arrayExpression;
025 }
026
027 public JsExpression getIndexExpression() {
028 return indexExpression;
029 }
030
031 public void setArrayExpression(JsExpression arrayExpression) {
032 this.arrayExpression = arrayExpression;
033 }
034
035 public void setIndexExpression(JsExpression indexExpression) {
036 this.indexExpression = indexExpression;
037 }
038
039 @Override
040 public void accept(JsVisitor v) {
041 v.visitArrayAccess(this);
042 }
043
044 @Override
045 public void acceptChildren(JsVisitor visitor) {
046 visitor.accept(arrayExpression);
047 visitor.accept(indexExpression);
048 }
049 }