def makeCoreTypePlusInit(typeName, column_defs):
    """Returns swift source code to handle creation and standard IO to a sqlite DB table

    """
    from _templates.coreType import typeTemplate
    
    fieldDefs = makeFieldDefs(typeName, column_defs)
    typeInit = makeTypeInit(typeName, column_defs)
    
    # print 'fieldDefs'
    # print fieldDefs
    # print 'typeInit'
    # print typeInit
    
    argsDict = {'typeName':typeName, 'fieldDefs':fieldDefs, 'typeInit':typeInit }
    # Fill-in the class template
    tableType = typeTemplate.format(**argsDict)

    return tableType
def makeTableIo(coreTypename, column_defs):
    """Returns swift source code to handle creation and standard IO to a sqlite DB table
        {dbTablename}()
        {coreTypename}
        {expression_defs}
        {createColumnDefs}
        {createInstanceArgsTemplate} 
        {setRowValsArgs}
    """
    from _templates.tableIO import typeTemplate

    dbTablename = coreTypename.lower()
    expression_defs = makeColumnExpressions(column_defs)
    createColumnDefs = makeCreateTableCols(column_defs)
    createInstanceArgsTemplate = createInstanceArgs(column_defs)
    setRowValsArgs = createRowValueArgs(column_defs)

    args = {'dbTablename':dbTablename, 'coreTypename':coreTypename, 'expression_defs':expression_defs, 'createColumnDefs':createColumnDefs, 'createInstanceArgsTemplate':createInstanceArgsTemplate, 'setRowValsArgs':setRowValsArgs}
    # Fill-in the class template
    type_definition = typeTemplate.format(**args)
    return type_definition