Example #1
0
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)
Example #2
0
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)