本文整理汇总了C++中db_error函数的典型用法代码示例。如果您正苦于以下问题:C++ db_error函数的具体用法?C++ db_error怎么用?C++ db_error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了db_error函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: db_bus_write_cmd
void
db_bus_write_cmd(db_expr_t addr, bool have_addr, db_expr_t count,
const char *modif)
{
db_expr_t datum;
bus_space_tag_t iot = &iobus_bs_tag; /* XXX */
bus_space_handle_t ioh;
if (!have_addr)
db_error("target address must be specified");
bus_space_map(iot, addr, 1, 0, &ioh);
while (db_expression(&datum)) {
switch (*modif) {
case 'b':
bus_space_write_1(iot, ioh, 0, datum);
break;
case '\0':
case 'h':
bus_space_write_2(iot, ioh, 0, datum);
break;
default:
db_error("bad modifier");
}
}
bus_space_unmap(iot, ioh, 1);
db_skip_to_eol();
}
开发者ID:krytarowski,项目名称:netbsd-current-src-sys,代码行数:29,代码来源:db_machdep.c
示例2: db_def_macro_cmd
void
db_def_macro_cmd(void)
{
register char *p;
register int c;
register struct db_user_macro *mp, *ep;
if (db_read_token() != tIDENT) {
db_printf("Bad macro name \"%s\"\n", db_tok_string);
db_error(0);
/* NOTREACHED */
}
if ((mp = db_lookup_macro(db_tok_string)) == 0) {
if (db_macro_free <= 0)
db_error("Too many macros\n");
/* NOTREACHED */
ep = &db_user_macro[DB_NUSER_MACRO];
for (mp = db_user_macro; mp < ep && mp->m_name[0]; mp++);
if (mp >= ep)
db_error("ddb: internal error(macro)\n");
/* NOTREACHED */
db_macro_free--;
strlcpy(mp->m_name, db_tok_string, TOK_STRING_SIZE);
}
for (c = db_read_char(); c == ' ' || c == '\t'; c = db_read_char());
for (p = mp->m_lbuf; c > 0; c = db_read_char())
*p++ = c;
*p = 0;
mp->m_size = p - mp->m_lbuf;
}
开发者ID:MACasuba,项目名称:MACasuba-Utils-git,代码行数:30,代码来源:db_macro.c
示例3: db_shift_expr
boolean_t
db_shift_expr(db_expr_t *valuep)
{
db_expr_t lhs, rhs;
int t;
if (!db_add_expr(&lhs))
return (FALSE);
t = db_read_token();
while (t == tSHIFT_L || t == tSHIFT_R) {
if (!db_add_expr(&rhs)) {
db_error("Syntax error\n");
/*NOTREACHED*/
}
if (rhs < 0) {
db_error("Negative shift amount\n");
/*NOTREACHED*/
}
if (t == tSHIFT_L)
lhs <<= rhs;
else {
/* Shift right is unsigned */
lhs = (unsigned) lhs >> rhs;
}
t = db_read_token();
}
db_unread_token(t);
*valuep = lhs;
return (TRUE);
}
开发者ID:avsm,项目名称:openbsd-xen-sys,代码行数:31,代码来源:db_expr.c
示例4: db_msg
static const char *readline()
{
int count;
db_msg("prepare to readline\n");
do{
count = read(device_fd, s_ATBuffer,MAX_AT_RESPONSE);
db_msg("readline count=%d\n",count);
} while (count < 0 && errno == EINTR);
if (count > 0){
s_ATBuffer[count] = '\0';//mark the string end
}
else if (count<=0) {
/* read error encountered or EOF reached */
if(count == 0) {
db_error("ATchannel: EOF reached\n");
} else {
db_error("ATchannel: read error %s\n", strerror(errno));
}
return NULL;
}
return s_ATBuffer;
}
开发者ID:bitgothic,项目名称:h3_lichee,代码行数:26,代码来源:2gtester.c
示例5: db_check_interrupt
void
db_check_interrupt(void)
{
int c;
c = cnmaygetc();
switch (c) {
case -1: /* no character */
return;
case CTRL('c'):
db_error(NULL);
/*NOTREACHED*/
case CTRL('s'):
do {
c = cnmaygetc();
if (c == CTRL('c'))
db_error(NULL);
} while (c != CTRL('q'));
break;
default:
/* drop on floor */
break;
}
}
开发者ID:juanfra684,项目名称:DragonFlyBSD,代码行数:27,代码来源:db_input.c
示例6: db_set_cmd
void
db_set_cmd(db_expr_t dummy1, bool dummy2, db_expr_t dummy3, char *dummy4)
{
struct db_variable *vp;
db_expr_t value;
int t;
t = db_read_token();
if (t != tDOLLAR) {
db_error("Unknown variable\n");
return;
}
if (!db_find_variable(&vp)) {
db_error("Unknown variable\n");
return;
}
t = db_read_token();
if (t != tEQ)
db_unread_token(t);
if (!db_expression(&value)) {
db_error("No value\n");
return;
}
if (db_read_token() != tEOL)
db_error("?\n");
db_write_variable(vp, value);
}
开发者ID:2asoft,项目名称:freebsd,代码行数:30,代码来源:db_variables.c
示例7: db_unary
boolean_t
db_unary(db_expr_t *valuep)
{
int t;
t = db_read_token();
if (t == tMINUS) {
if (!db_unary(valuep)) {
db_error("Syntax error\n");
/*NOTREACHED*/
}
*valuep = -*valuep;
return (TRUE);
}
if (t == tSTAR) {
/* indirection */
if (!db_unary(valuep)) {
db_error("Syntax error\n");
/*NOTREACHED*/
}
*valuep = db_get_value((db_addr_t)*valuep, sizeof(int), FALSE);
return (TRUE);
}
db_unread_token(t);
return (db_term(valuep));
}
开发者ID:avsm,项目名称:openbsd-xen-sys,代码行数:26,代码来源:db_expr.c
示例8: db_mult_expr
boolean_t
db_mult_expr(db_expr_t *valuep)
{
db_expr_t lhs, rhs;
int t;
if (!db_unary(&lhs))
return (FALSE);
t = db_read_token();
while (t == tSTAR || t == tSLASH || t == tPCT || t == tHASH) {
if (!db_term(&rhs)) {
db_error("Syntax error\n");
/*NOTREACHED*/
}
if (t == tSTAR)
lhs *= rhs;
else {
if (rhs == 0) {
db_error("Divide by 0\n");
/*NOTREACHED*/
}
if (t == tSLASH)
lhs /= rhs;
else if (t == tPCT)
lhs %= rhs;
else
lhs = ((lhs+rhs-1)/rhs)*rhs;
}
t = db_read_token();
}
db_unread_token(t);
*valuep = lhs;
return (TRUE);
}
开发者ID:avsm,项目名称:openbsd-xen-sys,代码行数:35,代码来源:db_expr.c
示例9: db_error
void PlayBack::cdrplaybackicon(HWND hWnd,ResourceID mId,int iCmdShow)
{
int retval;
CDR_RECT rect;
ResourceManager* rm;
HWND retWnd;
rm = ResourceManager::getInstance();
retval = rm->getResBmp(mId, BMPTYPE_BASE, bmpIcon);
if(retval < 0) {
db_error("get current playback icon bmp failed\n");
//return -1;
}
rm->getResRect(mId, rect);
db_msg("luo rect.x=%d rect.y=%d rect.w=%d rect.h=%d \n ",rect.x,rect.y,rect.w,rect.h);
retWnd = CreateWindowEx(CTRL_STATIC, "",
WS_VISIBLE | WS_CHILD | SS_BITMAP | SS_CENTERIMAGE,
WS_EX_TRANSPARENT,
mId,
rect.x, rect.y,rect.w,rect.h,
hWnd, (DWORD)&bmpIcon);
if(retWnd == HWND_INVALID) {
db_error("create playback icon label failed\n");
//return -1;
}
ShowWindow(retWnd, iCmdShow);
// return 0;
}
开发者ID:tongjinlv,项目名称:Linux_Cpp,代码行数:30,代码来源:PlayBack.cpp
示例10: setup_device
static int setup_device(char *device_node_path,int setup_delay)
{
struct termios ios;
device_fd= open (device_node_path, O_RDWR);
if(device_fd<0){
db_error("2glooptester:open device error\n");
}
/* disable echo on serial ports */
tcgetattr( device_fd, &ios );
ios.c_lflag = 0;
tcflush(device_fd, TCIFLUSH);
cfsetospeed(&ios,B115200);
if(tcsetattr( device_fd, TCSANOW, &ios )){
db_error("set tty attr fail\n");
return -1;
}
db_msg("sleep %d s to wait for hardware ready\n",setup_delay);
sleep(setup_delay);//sleep befor hardware get ready
return 0;
}
开发者ID:menghang,项目名称:a31_422_v33_lichee,代码行数:25,代码来源:2glooptester.c
示例11: scan_db
int
scan_db(DB *dbp)
{
DBC *cursor;
int ret, num_recs = 0;
DBT key, data;
ret = dbp->cursor(dbp, 0, &cursor, 0);
if(ret)
{
db_error("DB->cursor", ret);
return ret;
}
memset(&key, 0, sizeof(DBT));
memset(&data, 0, sizeof(DBT));
while( (ret = cursor->c_get(cursor, &key, &data, DB_NEXT)) == 0)
num_recs++;
if(ret == DB_NOTFOUND)
printf("Scan of %s completed successfully. Scanned %d records\n",
dbp->fname, num_recs);
else
{
db_error("DBC->get", ret);
return ret;
}
cursor->c_close(cursor);
return 0;
}
开发者ID:SANL-2015,项目名称:SANL-2015,代码行数:31,代码来源:tpcc_helpers.c
示例12: create_db
/*
* Create new db handle.
*/
int
create_db(DB_ENV *db_envp, DB **dbp, int PAGE_SIZE, int add_flags)
{
int err;
if(( err = db_create(dbp, db_envp, 0)))
{
db_error("db_create", err);
return err;
}
if((err = (*dbp)->set_pagesize(*dbp, PAGE_SIZE)))
{
db_error("DB->set_pagesize", err);
return err;
}
if(add_flags)
{
if ((err = (*dbp)->set_flags(*dbp, add_flags)) != 0)
{
db_error("DB->set_flags", err);
return err;
}
}
return 0;
}
开发者ID:SANL-2015,项目名称:SANL-2015,代码行数:28,代码来源:tpcc_helpers.c
示例13: db_set_cmd
/*ARGSUSED*/
void
db_set_cmd(db_expr_t addr, int have_addr, db_expr_t count, char *modif)
{
db_expr_t value;
struct db_variable *vp;
int t;
t = db_read_token();
if (t != tDOLLAR) {
db_error("Unknown variable\n");
/*NOTREACHED*/
}
if (!db_find_variable(&vp)) {
db_error("Unknown variable\n");
/*NOTREACHED*/
}
t = db_read_token();
if (t != tEQ)
db_unread_token(t);
if (!db_expression(&value)) {
db_error("No value\n");
/*NOTREACHED*/
}
if (db_read_token() != tEOL) {
db_error("?\n");
/*NOTREACHED*/
}
db_write_variable(vp, &value);
}
开发者ID:SylvestreG,项目名称:bitrig,代码行数:33,代码来源:db_variables.c
示例14: assert
///
/// @param name Table name to check for
/// @return True if table name exists
///
/// Return whether a table with the specified name exists in the current database.
bool sqlite::table_exists(const std::string& name)
{
assert(db_);
// check the master table first
std::string sql = "select name from sqlite_master where type IN ('table','view') AND name=?";
sqlite3_stmt* stmt;
if(sqlite3_prepare(db_, sql.c_str(), sql.length(), &stmt, 0) != SQLITE_OK)
throw db_error(sqlite3_errmsg(db_));
sqlite3_bind_text(stmt, 1, name.c_str(), name.length(), SQLITE_TRANSIENT);
int result = sqlite3_step(stmt);
sqlite3_finalize(stmt);
if(result == SQLITE_ROW)
return true;
// check the temp_master table last
sql = "select name from sqlite_temp_master where type IN ('table','view') AND name=?";
if(sqlite3_prepare(db_, sql.c_str(), sql.length(), &stmt, 0) != SQLITE_OK)
throw db_error(sqlite3_errmsg(db_));
sqlite3_bind_text(stmt, 1, name.c_str(), name.length(), SQLITE_TRANSIENT);
result = sqlite3_step(stmt);
sqlite3_finalize(stmt);
return result == SQLITE_ROW;
}
开发者ID:Endt4sk,项目名称:mt4tradeduplicator,代码行数:32,代码来源:sdsqlite.cpp
示例15: db_kill_proc
void
db_kill_proc(db_expr_t addr, bool haddr,
db_expr_t count, const char *modif)
{
#ifdef _KERNEL /* XXX CRASH(8) */
struct proc *p;
ksiginfo_t ksi;
db_expr_t pid, sig;
int t;
/* What pid? */
if (!db_expression(&pid)) {
db_error("pid?\n");
/*NOTREACHED*/
}
/* What sig? */
t = db_read_token();
if (t == tCOMMA) {
if (!db_expression(&sig)) {
db_error("sig?\n");
/*NOTREACHED*/
}
} else {
db_unread_token(t);
sig = 15;
}
if (db_read_token() != tEOL) {
db_error("?\n");
/*NOTREACHED*/
}
/* We might stop when the mutex is held or when not */
t = mutex_tryenter(proc_lock);
#ifdef DIAGNOSTIC
if (!t) {
db_error("could not acquire proc_lock mutex\n");
/*NOTREACHED*/
}
#endif
p = proc_find((pid_t)pid);
if (p == NULL) {
if (t)
mutex_exit(proc_lock);
db_error("no such proc\n");
/*NOTREACHED*/
}
KSI_INIT(&ksi);
ksi.ksi_signo = sig;
ksi.ksi_code = SI_USER;
ksi.ksi_pid = 0;
ksi.ksi_uid = 0;
mutex_enter(p->p_lock);
kpsignal2(p, &ksi);
mutex_exit(p->p_lock);
if (t)
mutex_exit(proc_lock);
#else
db_printf("This command is not currently supported.\n");
#endif
}
开发者ID:eyberg,项目名称:rumpkernel-netbsd-src,代码行数:59,代码来源:db_xxx.c
示例16: db_write_cmd
/*ARGSUSED*/
void
db_write_cmd(db_expr_t address, boolean_t have_addr, db_expr_t count,
char *modif)
{
db_addr_t addr;
db_expr_t old_value;
db_expr_t new_value;
int size;
boolean_t wrote_one = FALSE;
char tmpfmt[28];
addr = (db_addr_t) address;
switch (modif[0]) {
case 'b':
size = 1;
break;
case 'h':
size = 2;
break;
case 'l':
case '\0':
size = 4;
break;
#ifdef __LP64__
case 'q':
size = 8;
break;
#endif
default:
size = -1;
db_error("Unknown size\n");
/*NOTREACHED*/
}
while (db_expression(&new_value)) {
old_value = db_get_value(addr, size, FALSE);
db_printsym(addr, DB_STGY_ANY, db_printf);
db_printf("\t\t%s\t", db_format(tmpfmt, sizeof tmpfmt,
old_value, DB_FORMAT_N, 0, 8));
db_printf("=\t%s\n", db_format(tmpfmt, sizeof tmpfmt,
new_value, DB_FORMAT_N, 0, 8));
db_put_value(addr, size, new_value);
addr += size;
wrote_one = TRUE;
}
if (!wrote_one) {
db_error("Nothing written.\n");
/*NOTREACHED*/
}
db_next = addr;
db_prev = addr - size;
db_skip_to_eol();
}
开发者ID:ajinkya93,项目名称:OpenBSD,代码行数:59,代码来源:db_command.c
示例17: db_cond_cmd
void
db_cond_cmd(void)
{
register int c;
register struct db_cond *cp;
register char *p;
db_expr_t value;
db_thread_breakpoint_t bkpt;
if (db_read_token() != tHASH || db_read_token() != tNUMBER) {
db_printf("#<number> expected instead of \"%s\"\n", db_tok_string);
db_error(0);
return;
}
if ((bkpt = db_find_breakpoint_number(db_tok_number, 0)) == 0) {
db_printf("No such break point #%d\n", db_tok_number);
db_error(0);
return;
}
/*
* if the break point already has a condition, free it first
*/
if (bkpt->tb_cond > 0) {
cp = &db_cond[bkpt->tb_cond - 1];
db_cond_free(bkpt);
} else {
if (db_ncond_free <= 0) {
db_error("Too many conditions\n");
return;
}
for (cp = db_cond; cp < &db_cond[DB_MAX_COND]; cp++)
if (cp->c_size == 0)
break;
if (cp >= &db_cond[DB_MAX_COND])
panic("bad db_cond_free");
}
for (c = db_read_char(); c == ' ' || c == '\t'; c = db_read_char());
for (p = cp->c_cond_cmd; c >= 0; c = db_read_char())
*p++ = c;
/*
* switch to saved data and call db_expression to check the condition.
* If no condition is supplied, db_expression will return false.
* In this case, clear previous condition of the break point.
* If condition is supplied, set the condition to the permanent area.
* Note: db_expression will not return here, if the condition
* expression is wrong.
*/
db_switch_input(cp->c_cond_cmd, p - cp->c_cond_cmd);
if (!db_expression(&value)) {
/* since condition is already freed, do nothing */
db_flush_lex();
return;
}
db_flush_lex();
db_ncond_free--;
cp->c_size = p - cp->c_cond_cmd;
bkpt->tb_cond = (cp - db_cond) + 1;
}
开发者ID:MACasuba,项目名称:MACasuba-Utils-git,代码行数:58,代码来源:db_cond.c
示例18: db_write_cmd
/*ARGSUSED*/
void
db_write_cmd(db_expr_t address, bool have_addr,
db_expr_t count, const char *modif)
{
db_addr_t addr;
db_expr_t old_value;
db_expr_t new_value;
int size;
bool wrote_one;
bool show_old_val;
addr = (db_addr_t) address;
wrote_one = false;
show_old_val = islower((unsigned char)modif[0]);
switch (tolower((unsigned char)modif[0])) {
case 'b':
size = 1;
break;
case 'h':
size = 2;
break;
case 'l':
case '\0':
size = 4;
break;
default:
size = -1;
db_error("Unknown size\n");
/*NOTREACHED*/
}
while (db_expression(&new_value)) {
db_printsym(addr, DB_STGY_ANY, db_printf);
if (show_old_val) {
old_value = db_get_value(addr, size, false);
db_printf("\t\t%s = ", db_num_to_str(old_value));
db_printf("%s\n", db_num_to_str(new_value));
}
else
db_printf("\t\t= %s\n", db_num_to_str(new_value));
db_put_value(addr, size, new_value);
addr += size;
wrote_one = true;
}
if (!wrote_one) {
db_error("Nothing written.\n");
/*NOTREACHED*/
}
db_next = addr;
db_prev = addr - size;
db_skip_to_eol();
}
开发者ID:eyberg,项目名称:rumpkernel-netbsd-src,代码行数:58,代码来源:db_write_cmd.c
示例19: db_term
static boolean_t
db_term(db_expr_t *valuep)
{
int t;
t = db_read_token();
if (t == tIDENT) {
if (!db_value_of_name(db_tok_string, valuep) &&
!db_value_of_name_pcpu(db_tok_string, valuep) &&
!db_value_of_name_vnet(db_tok_string, valuep)) {
db_error("Symbol not found\n");
/*NOTREACHED*/
}
return (TRUE);
}
if (t == tNUMBER) {
*valuep = (db_expr_t)db_tok_number;
return (TRUE);
}
if (t == tDOT) {
*valuep = (db_expr_t)db_dot;
return (TRUE);
}
if (t == tDOTDOT) {
*valuep = (db_expr_t)db_prev;
return (TRUE);
}
if (t == tPLUS) {
*valuep = (db_expr_t) db_next;
return (TRUE);
}
if (t == tDITTO) {
*valuep = (db_expr_t)db_last_addr;
return (TRUE);
}
if (t == tDOLLAR) {
if (!db_get_variable(valuep))
return (FALSE);
return (TRUE);
}
if (t == tLPAREN) {
if (!db_expression(valuep)) {
db_error("Syntax error\n");
/*NOTREACHED*/
}
t = db_read_token();
if (t != tRPAREN) {
db_error("Syntax error\n");
/*NOTREACHED*/
}
return (TRUE);
}
db_unread_token(t);
return (FALSE);
}
开发者ID:AhmadTux,项目名称:freebsd,代码行数:55,代码来源:db_expr.c
示例20: setup_2g_device
int setup_2g_device(char *device_node_path,int setup_delay)
{
char *p_cur;
int sl;
struct termios ios;
device_fd= open (device_node_path, O_RDWR);
if(device_fd<0)
{
db_error("2gtester:open device error\n");
}
/* disable echo on serial ports */
tcgetattr( device_fd, &ios );
ios.c_lflag = 0;
tcflush(device_fd, TCIFLUSH);
cfsetospeed(&ios,B115200);
if(tcsetattr( device_fd, TCSANOW, &ios ))
{
db_error("set tty attr fail\n");
return 0;
}
db_msg("sleep %d s to wait for hardware ready\n",setup_delay);
sleep(setup_delay);//sleep befor hardware get ready
readline(); //dump the msg
db_msg("2gtester dump readline: %s\n",s_ATBuffer);
if(writeline("AT+CSQ")){ //WRITE single query command
return 0;
}
sleep(1);
if(!readline()){
db_error("2gtester:no correct response for the AT+CSQ\n");
return 0;
}
db_msg("2gtester AT+CSQ readline: %s\n",s_ATBuffer);
p_cur=strstr(s_ATBuffer,"+CSQ:");
if (*p_cur == NULL) {
return 0;
}
p_cur+=5; //point to the rssi start position
db_msg("p_cur=%s\n",p_cur);
sl=atoi(p_cur);
sl=(sl*2)-113;
db_msg("sl=%d\n",sl);
return sl;
}
开发者ID:bitgothic,项目名称:h3_lichee,代码行数:55,代码来源:2gtester.c
注:本文中的db_error函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论