1 /*** 2 * Cecilia ADL Compiler 3 * Copyright (C) 2008 STMicroelectronics 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with this library; if not, write to the Free Software 17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 * 19 * Contact: fractal@objectweb.org 20 * 21 * Author: Matthieu Leclercq 22 */ 23 24 package org.objectweb.fractal.cecilia.adl.implementations; 25 26 import org.objectweb.fractal.adl.implementations.Implementation; 27 28 /** 29 * AST Node interface which adds a <code>language</code> attribute to 30 * <code>implementation</code> element. 31 */ 32 public interface ExtendedImplementation extends Implementation { 33 /** 34 * Returns the language of the implementation. 35 * 36 * @return the language of the implementation. 37 */ 38 String getLanguage(); 39 40 /** 41 * Set the language of the implementation. 42 * 43 * @param language the language of the implementation. 44 */ 45 void setLanguage(String language); 46 47 /** 48 * Returns the value of the <code>hasConstructor</code> attribute. 49 * 50 * @return the value of the <code>hasConstructor</code> attribute. 51 */ 52 String getHasConstructor(); 53 54 /** 55 * Sets the value of the <code>hasConstructor</code> attribute. 56 * 57 * @param hasConstructor the value of the <code>hasConstructor</code> 58 * attribute. Must be either <code>"true"</code> or 59 * <code>"false"</code>. 60 * @see #getHasConstructor() 61 */ 62 void setHasConstructor(String hasConstructor); 63 64 /** 65 * Returns the value of the <code>hasDestructor</code> attribute. 66 * 67 * @return the value of the <code>hasDestructor</code> attribute. 68 */ 69 String getHasDestructor(); 70 71 /** 72 * Sets the value of the <code>hasDestructor</code> attribute. 73 * 74 * @param hasDestructor the value of the <code>hasDestructor</code> attribute. 75 * Must be either <code>"true"</code> or <code>"false"</code>. 76 * @see #getHasConstructor() 77 */ 78 void setHasDestructor(String hasDestructor); 79 }