PragmaEntry.java revision 608:7e06bf1dcb09
1/* 2 * Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25/* 26 * COMPONENT_NAME: idl.parser 27 * 28 * ORIGINS: 27 29 * 30 * Licensed Materials - Property of IBM 31 * 5639-D57 (C) COPYRIGHT International Business Machines Corp. 1997, 1999 32 * RMI-IIOP v1.0 33 * 34 */ 35 36package com.sun.tools.corba.se.idl; 37 38// NOTES: 39 40import java.io.PrintWriter; 41import java.util.Hashtable; 42 43/** 44 * This is the symbol table entry for the #pragma statement. 45 **/ 46public class PragmaEntry extends SymtabEntry 47{ 48 protected PragmaEntry () 49 { 50 super (); 51 repositoryID (Util.emptyID); 52 } // ctor 53 54 protected PragmaEntry (SymtabEntry that) 55 { 56 super (that, new IDLID ()); 57 module (that.name ()); 58 name (""); 59 } // ctor 60 61 protected PragmaEntry (PragmaEntry that) 62 { 63 super (that); 64 } // ctor 65 66 public Object clone () 67 { 68 return new PragmaEntry (this); 69 } // clone 70 71 /** Invoke the Include type generator. 72 @param symbolTable the symbol table is a hash table whose key is 73 a fully qualified type name and whose value is a SymtabEntry or 74 a subclass of SymtabEntry. 75 @param stream the stream to which the generator should sent its output. 76 @see SymtabEntry */ 77 public void generate (Hashtable symbolTable, PrintWriter stream) 78 { 79 pragmaGen.generate (symbolTable, this, stream); 80 } // generate 81 82 /** Access the Include type generator. 83 @returns an object which implements the IncludeGen interface. 84 @see IncludeGen */ 85 public Generator generator () 86 { 87 return pragmaGen; 88 } // generator 89 90 public String data () 91 { 92 return _data; 93 } // data 94 95 public void data (String newData) 96 { 97 _data = newData; 98 } // data 99 100 static PragmaGen pragmaGen; 101 102 private String _data = null; 103} // class PragmaEntry 104