Class BasicCParser


  • public class BasicCParser
    extends java.lang.Object
    A rudimentary preprocessor and parser for the C programming language. FIXME replace this by a parser generated via ANTLR (if we really need it?!)
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.io.PushbackInputStream is  
    • Constructor Summary

      Constructors 
      Constructor Description
      BasicCParser​(java.io.ByteArrayInputStream is)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String nextToken()  
      static java.io.ByteArrayOutputStream preprocess​(java.io.InputStream is, java.lang.StringBuilder firstComment, java.util.Map<java.lang.String,​java.lang.String> defines)  
      static java.lang.String[] tokenizeRow​(java.lang.String row)  
      static void unescapeString​(java.lang.StringBuilder stringBuilder, java.lang.String string)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • is

        private final java.io.PushbackInputStream is
    • Constructor Detail

      • BasicCParser

        public BasicCParser​(java.io.ByteArrayInputStream is)
    • Method Detail

      • preprocess

        public static java.io.ByteArrayOutputStream preprocess​(java.io.InputStream is,
                                                               java.lang.StringBuilder firstComment,
                                                               java.util.Map<java.lang.String,​java.lang.String> defines)
                                                        throws java.io.IOException,
                                                               ImageReadException
        Throws:
        java.io.IOException
        ImageReadException
      • tokenizeRow

        public static java.lang.String[] tokenizeRow​(java.lang.String row)