14c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson/*
24c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * Licensed to the Apache Software Foundation (ASF) under one
34c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * or more contributor license agreements. See the NOTICE file
44c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * distributed with this work for additional information
54c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * regarding copyright ownership. The ASF licenses this file
64c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * to you under the Apache License, Version 2.0 (the  "License");
74c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * you may not use this file except in compliance with the License.
84c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * You may obtain a copy of the License at
94c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson *
104c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson *     http://www.apache.org/licenses/LICENSE-2.0
114c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson *
124c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * Unless required by applicable law or agreed to in writing, software
134c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * distributed under the License is distributed on an "AS IS" BASIS,
144c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
154c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * See the License for the specific language governing permissions and
164c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * limitations under the License.
174c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson */
184c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson/*
194c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * $Id: ExpressionOwner.java 468655 2006-10-28 07:12:06Z minchau $
204c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson */
214c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilsonpackage org.apache.xpath;
224c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson
234c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson/**
244c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * Classes that implement this interface own an expression, which
254c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson * can be rewritten.
264c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson */
274c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilsonpublic interface ExpressionOwner
284c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson{
294c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson  /**
304c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson   * Get the raw Expression object that this class wraps.
314c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson   *
324c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson   * @return the raw Expression object, which should not normally be null.
334c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson   */
344c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson  public Expression getExpression();
354c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson
364c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson  /**
374c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson   * Set the raw expression object for this object.
384c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson   *
394c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson   * @param exp the raw Expression object, which should not normally be null.
404c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson   */
414c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson  public void setExpression(Expression exp);
424c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson
434c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson
444c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson}
454c7a0d97cf2b27790e6236965a1d798d710d7ec7Jesse Wilson
46