static YogVal group(YogEnv* env, YogHandle* self, YogHandle* pkg, YogHandle* group) { CHECK_SELF_MATCH2(env, self); if ((group == NULL) || IS_NIL(HDL2VAL(group))) { return group_num(env, self, 0); } if (IS_FIXNUM(HDL2VAL(group))) { return group_num(env, self, VAL2INT(HDL2VAL(group))); } if (IS_PTR(HDL2VAL(group)) && (BASIC_OBJ_TYPE(HDL2VAL(group)) == TYPE_STRING)) { return group_str(env, self, group); } raise_invalid_group(env, HDL2VAL(group)); return YUNDEF; }
static YogVal group_str(YogEnv* env, YogHandle* self, YogHandle* group) { return group_num(env, self, group_name2id(env, HDL2VAL(self), HDL2VAL(group))); }
/* returns the group number of the chat with public key group_public_key. * returns -1 on failure. */ int tox_group_get_num(Tox *tox, uint8_t *group_public_key) { Messenger *m = tox; return group_num(m, group_public_key); }