UNPKG

n1-sql

Version:
32 lines (29 loc) 913 B
'use strict'; module.exports.setSingularState = function (state, path, value) { var old = state.getIn([path]); if (old) { throw '"' + path + '" already set to "' + old + '".'; } return state.setIn([path], value); }; module.exports.parseColumn = function (colId, state) { var cs = colId.split('.'); if (cs.length !== 2) { throw 'Expected a column description of kind "table.colName", but got "' + colId + '".'; } var tableName = cs[0]; var table = state.getIn(['table2dp', tableName]); if (!table) { throw 'Undeclared table "' + tableName + '" in join "' + colId + '".'; } var column = cs[1]; var res = { table: table, column: column }; if (tableName !== table) { res.tableAlias = tableName; } return res; }; module.exports.toSqlColumn = function (colHash) { var t = colHash.tableAlias ? colHash.tableAlias : colHash.table; return t + '.' + colHash.column; };