示例#1
0
static int Lhint(lua_State *L) {
    int type = lua_type(L, 1);
    if (type == LUA_TNUMBER)
        return set_hint(L, lua_tointeger(L, 1));
    else if (type == LUA_TSTRING) {
        size_t len;
        const char *s = luaL_checklstring(L, 1, &len);
        if (liteq(s, "reset")) {
            glfwDefaultWindowHints();
            return 0;
        }
        return set_hint(L, find_hintcode(L, s, len));
    }
    return lbind_typeerror(L, 1, "hint name (string/number)");
}
示例#2
0
文件: match.c 项目: 8l/myrddin
static Dtree *addlit(Dtree *t, Node *pat, Node *val, Node ***cap, size_t *ncap)
{
    Dtree *sub;
    size_t i;

    if (t->any)
        return t->any;
    for (i = 0; i < t->nval; i++) {
        if (liteq(t->val[i]->expr.args[0], pat->expr.args[0]))
            return t->sub[i];
    }

    sub = mkdtree();
    sub->patexpr = pat;
    lappend(&t->val, &t->nval, pat);
    lappend(&t->load, &t->nload, val);
    lappend(&t->sub, &t->nsub, sub);
    return sub;
}