openDatabase = undefined; ; (function () { SQLResultSetRowList = function SQLResultSetRowList(createObj_key, rows) { if (createObj_key !== lwVm.memory.$createObj_key) { throw new TypeError("Illegal constructor"); } lwVm.memory.private_data.set(this, { rows: rows, length: rows.length }) }; lwVm.safefunction(SQLResultSetRowList); ; (function () { const $safe_get_attribute = ['length']; const $safe_set_attribute = []; const $safe_func_attribute = ['item']; SQLResultSetRowList.prototype = { item() { if (!SQLResultSetRowList.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; let result = lwVm.memory.private_data.get(this).rows; if (lwVm.config.logOpen === true) lwVm.logAdd('Func', 'SQLResultSetRowList', 'item', arguments, result); return result; }, get length() { if (!SQLResultSetRowList.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; let result = lwVm.abs(lwVm.memory.private_data.get(this).length, 0); if (lwVm.config.logOpen === true) lwVm.logAdd('Get', 'SQLResultSetRowList', 'length', arguments, result); return result; }, } lwVm.rename(SQLResultSetRowList.prototype, "SQLResultSetRowList"); lwVm.safeDescriptor_addConstructor(SQLResultSetRowList); lwVm.safe_Objattribute(SQLResultSetRowList, $safe_get_attribute, $safe_set_attribute, $safe_func_attribute); })(); // -----------------------------------------------------------SQLResultSet---------------------------------------------------------------- SQLResultSet = function SQLResultSet(createObj_key) { if (createObj_key !== lwVm.memory.$createObj_key) { throw new TypeError("Illegal constructor"); } lwVm.memory.private_data.set(this, {}) }; lwVm.safefunction(SQLResultSet); ; (function () { const $safe_get_attribute = ['insertId', 'rows', 'rowsAffected']; const $safe_set_attribute = []; const $safe_func_attribute = []; SQLResultSet.prototype = { get insertId() { if (!SQLResultSet.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; let result = lwVm.abs(lwVm.memory.private_data.get(this).insertId, ""); if (lwVm.config.logOpen === true) lwVm.logAdd('Get', 'SQLResultSet', 'insertId', arguments, result); return result; }, get rows() { if (!SQLResultSet.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; // let sql_result_row_list = new SQLResultSetRowList(lwVm.memory.$createObj_key, {"value": window.sql_values}); let result = { "value": "0" }; if (lwVm.config.logOpen === true) lwVm.logAdd('Get', 'SQLResultSet', 'rows', arguments, result); return result; }, get rowsAffected() { if (!SQLResultSet.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; let result = lwVm.abs(lwVm.memory.private_data.get(this).rowsAffected, ""); if (lwVm.config.logOpen === true) lwVm.logAdd('Get', 'SQLResultSet', 'rowsAffected', arguments, result); return result; }, } lwVm.rename(SQLResultSet.prototype, "SQLResultSet"); lwVm.safeDescriptor_addConstructor(SQLResultSet); lwVm.safe_Objattribute(SQLResultSet, $safe_get_attribute, $safe_set_attribute, $safe_func_attribute); })(); // -----------------------------------------------------------SQLTransaction---------------------------------------------------------------- SQLTransaction = function SQLTransaction(createObj_key) { if (createObj_key !== lwVm.memory.$createObj_key) { throw new TypeError("Illegal constructor"); } lwVm.memory.private_data.set(this, {}) }; lwVm.safefunction(SQLTransaction); ; (function () { const $safe_get_attribute = []; const $safe_set_attribute = []; const $safe_func_attribute = ['executeSql']; SQLTransaction.prototype = { executeSql(sql, arg, succrssCallback, errorCallback) { if (!SQLTransaction.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; try { } catch (error) { let result = errorCallback(this, sql_result); if (lwVm.config.logOpen === true) lwVm.logAdd('Func', 'SQLTransaction', '} catch ', arguments, result); return result; } let sql_result = new SQLResultSet(lwVm.memory.$createObj_key); let result = succrssCallback(this, sql_result); if (lwVm.config.logOpen === true) lwVm.logAdd('Func', 'SQLTransaction', '} catch ', arguments, result); return result; } } lwVm.rename(SQLTransaction.prototype, "SQLTransaction"); lwVm.safeDescriptor_addConstructor(SQLTransaction); lwVm.safe_Objattribute(SQLTransaction, $safe_get_attribute, $safe_set_attribute, $safe_func_attribute); })(); // -----------------------------------------------------------Database---------------------------------------------------------------- let buffer_memory = {} // 保存创建的数据库连接 Database = function Database(createObj_key, version) { if (createObj_key !== lwVm.memory.$createObj_key) { throw new TypeError("Illegal constructor"); } lwVm.memory.private_data.set(this, { version: version }) }; lwVm.safefunction(Database); ; (function () { const $safe_get_attribute = ['version']; const $safe_set_attribute = []; const $safe_func_attribute = ['changeVersion', 'readTransaction', 'transaction']; Database.prototype = { changeVersion(old_version, new_version) { if (!Database.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; let this_info = lwVm.memory.private_data.get(this); if (old_version == this_info.version) { this_info.version = new_version; } }, readTransaction(func) { if (!Database.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; let result = undefined; if (lwVm.config.logOpen === true) lwVm.logAdd('Func', 'Database', 'readTransaction', arguments, result); return result; }, transaction(func) { if (!Database.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; let sql_tran = new SQLTransaction(lwVm.memory.$createObj_key); let result = func(sql_tran); if (lwVm.config.logOpen === true) lwVm.logAdd('Func', 'Database', 'transaction', arguments, result); return result; }, get version() { if (!Database.prototype.isPrototypeOf(this)) { throw new TypeError("Illegal constructor"); }; return lwVm.abs(lwVm.memory.private_data.get(this).version, ""); } } lwVm.rename(Database.prototype, "Database"); lwVm.safeDescriptor_addConstructor(Database); lwVm.safe_Objattribute(Database, $safe_get_attribute, $safe_set_attribute, $safe_func_attribute); })(); openDatabase = function openDatabase(name, version, desc, size, callback) { let db = buffer_memory[name]; if (db) { let result = db; if (lwVm.config.logOpen === true) lwVm.logAdd('Func', 'Database', 'if ', arguments, result); return result; } db = new Database(lwVm.memory.$createObj_key, version); buffer_memory[name] = db; return db; }; })();