def cast(sourcecode, skipIncludes=False): cPPFactory = PreProcessorFactory() cPP = cPPFactory.create([], [os.path.dirname(sourcecode.resource)], skipIncludes=skipIncludes) cT, symbols = cPP.process( sourcecode, dict() ) ast = c_Parser().parse(TokenStream(cT)).toAst() prettyprint = str(AstPrettyPrintable(ast)) return prettyprint
def getCastOutput(self): cPPFactory = PreProcessorFactory() cPP = cPPFactory.create([], [self.filepath]) filepath = os.path.join(self.filepath, 'source.c') sourcecode = SourceCode(filepath, open(filepath)) cT, symbols = cPP.process( sourcecode, dict() ) actualTokens = list(map(mapFuncSimple, list(cT))) return '\n'.join(actualTokens)
def ctok(sourcecode, skipIncludes=False): cPPFactory = PreProcessorFactory() cPP = cPPFactory.create([], [os.path.dirname(sourcecode.resource)], skipIncludes=skipIncludes) cT, symbols = cPP.process( sourcecode, dict() ) actualTokens = list(map(mapFunc, list(cT))) return '\n'.join(actualTokens)
def preprocessed(sourcecode, skipIncludes=False): cPPFactory = PreProcessorFactory() cPP = cPPFactory.create([], [os.path.dirname(sourcecode.resource)], skipIncludes=skipIncludes) cT, symbols = cPP.process( sourcecode, dict() ) return cT.toString()