Class MetaPragma

java.lang.Object
com.sun.tools.corba.ee.idl.PragmaHandler
com.sun.tools.corba.ee.idl.som.idlemit.MetaPragma

public class MetaPragma extends PragmaHandler
This is an implementation that handles #pragma meta scoped_name string where
  • scoped_name == "::" separated scoped name
  • string == separated identifiers, such as "localonly", "abstract", or "init". D59407: NOTE: any non-white-space is grouped as part of the identifier.
This pragma handler places a vector of Strings into the dynamicVariable() part of the SymtabEntry. The key to access the dynamicVariable() is MetaPragma.metaKey It is possible to associate a meta pragma with a forward entry. At some point after the parser has completed, the method processForward(ForwardEntry entry) should be called for each ForwardEntry so that the meta information can be folded from the ForwardEntry into the corresponding InterfaceEntry.
  • Field Details

    • metaKey

      public static int metaKey
    • initialState

      private static int initialState
      parse pragma message and place into vector v.
    • commentState

      private static int commentState
    • textState

      private static int textState
    • finalState

      private static int finalState
  • Constructor Details

    • MetaPragma

      public MetaPragma()
  • Method Details

    • process

      public boolean process(String pragma, String currentToken)
      Main entry point for the MetaPragma handler
      Specified by:
      process in class PragmaHandler
      Parameters:
      pragma - string for pragma name
      currentToken - next token in the input stream.
      Returns:
      true if this is a meta pragma.
    • processForward

      public static void processForward(ForwardEntry forwardEntry)
      Fold the meta info from the forward entry into its corresponding interface entry.
      Parameters:
      forwardEntry - the forward entry to process
    • parseMsg

      private void parseMsg(Vector v, String msg)