All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.gwt.rpc.client.ast.RpcCommandVisitor Maven / Gradle / Ivy

There is a newer version: 2.10.0
Show newest version
/*
 * Copyright 2009 Google Inc.
 * 
 * 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.gwt.rpc.client.ast;

import java.util.List;

/**
 * Describes a visitor that will traverse the RpcCommand structures.
 */
public class RpcCommandVisitor {
  /**
   * The context provides no services at this point and is provided as an
   * extension point for future development.
   */
  public interface Context {
  }

  /**
   * @param x a node in an RpcCommand structure
   */
  public final void accept(List x) {
    doAccept(x);
  }

  /**
   * @param x a node in an RpcCommand structure
   */
  public final RpcCommand accept(RpcCommand x) {
    return doAccept(x);
  }

  /**
   * @param x a node in an RpcCommand structure
   */
  public final void accept(RpcCommand[] x) {
    doAccept(x);
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(ArrayValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(BooleanValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(ByteValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(CharValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(DoubleValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(EnumValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(FloatValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(InstantiateCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(IntValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(InvokeCustomFieldSerializerCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(LongValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(NullValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(ReturnCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(SetCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(ShortValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(StringValueCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public void endVisit(ThrowCommand x, Context ctx) {
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(ArrayValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(BooleanValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(ByteValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(CharValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(DoubleValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(EnumValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(FloatValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(InstantiateCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(IntValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(InvokeCustomFieldSerializerCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(LongValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(NullValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(ReturnCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(SetCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(ShortValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(StringValueCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   * @param ctx the context for the visit
   */
  public boolean visit(ThrowCommand x, Context ctx) {
    return true;
  }

  /**
   * @param x a node in an RpcCommand structure
   */
  protected void doAccept(List x) {
    for (RpcCommand c : x) {
      accept(c);
    }
  }

  /**
   * @param x a node in an RpcCommand structure
   */
  protected RpcCommand doAccept(RpcCommand x) {
    x.traverse(this, null);
    return x;
  }

  /**
   * @param x a node in an RpcCommand structure
   */
  protected void doAccept(RpcCommand[] x) {
    for (RpcCommand c : x) {
      accept(c);
    }
  }

  /*
   * TODO: Make this fail more visibly
   */
  protected final void halt(Throwable t) {
    throw new RuntimeException("Unable to continue", t);
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy