def writeAbstractions(): path = './final_all_noindent_singleL/' nameRead = path + 'subset-srcTrgtPairs' nameWrite = nameRead + '_newAbs' headers, lines = H.readCSV(nameRead + '.csv') headers += ['NEW_SrcAbs', 'NEW_TrgtAbs'] writeLines = [] count = 0 for line in lines[:10]: writeLine = line srcText = line[headers.index('sourceText')] trgtText = line[headers.index('targetText')] for text, hname in zip([srcText, trgtText], ['', '']): codeObj = Code(text) absLines = getProgAbstraction(codeObj) writeLine.append(H.joinLL(absLines)) count += 1 print(count, line[headers.index('sourceID')]) writeLines.append(writeLine) H.writeCSV(nameWrite + '.csv', headers, writeLines)
def writeTypeKind(): path = './final_all_noindent_singleL/' nameRead = path + 'subset-srcTrgtPairs.csv' nameWrite = path + 'TokenKind.csv' headers, lines = H.readCSV(nameRead) writeH = ['spell', 'kind', 'cursorTypeKind'] dictSpell = collections.defaultdict(lambda: {}) count = 0 for line in lines: srcText = line[headers.index('sourceText')] codeObj = Code(srcText) for token in codeObj.getTokens(): cToken = CToken(token, codeObj) dictSpell[cToken.spell][str(cToken.kind) + '!@#$%' + str(cToken.cursorType)] = 0 count += 1 print(count, line[headers.index('sourceID')]) writeL = [[spell, kindType.split('!@#$%')[0], kindType.split('!@#$%')[1]] for spell in dictSpell for kindType in dictSpell[spell]] H.writeCSV(nameWrite, writeH, writeL)