fix(lib): update sasa/tanzaku add/remove functions
This commit is contained in:
parent
91a53fa703
commit
177799964a
@ -59,7 +59,7 @@ int tanabata_sasa_rem_by_path(Tanabata *tanabata, const char *path);
|
|||||||
// ==================== TANZAKU SECTION ==================== //
|
// ==================== TANZAKU SECTION ==================== //
|
||||||
|
|
||||||
// Add tanzaku
|
// Add tanzaku
|
||||||
int tanabata_tanzaku_add(Tanabata *tanabata, const char *name, const char *alias, const char *description);
|
int tanabata_tanzaku_add(Tanabata *tanabata, const char *name, const char *description);
|
||||||
|
|
||||||
// Remove tanzaku by ID
|
// Remove tanzaku by ID
|
||||||
int tanabata_tanzaku_rem_by_id(Tanabata *tanabata, uint64_t tanzaku_id);
|
int tanabata_tanzaku_rem_by_id(Tanabata *tanabata, uint64_t tanzaku_id);
|
||||||
|
|||||||
@ -1,13 +1,29 @@
|
|||||||
|
#include <string.h>
|
||||||
|
|
||||||
#include "../../include/tanabata.h"
|
#include "../../include/tanabata.h"
|
||||||
|
|
||||||
int tanabata_sasa_add(Tanabata *tanabata, const char *path) {
|
int tanabata_sasa_add(Tanabata *tanabata, const char *path) {
|
||||||
|
for (uint64_t i = 0; i < tanabata->sasahyou.size; i++) {
|
||||||
|
if (tanabata->sasahyou.database[i].id != HOLE_ID && strcmp(tanabata->sasahyou.database[i].path, path) == 0) {
|
||||||
|
fprintf(stderr, "Failed to add sasa: target file is already added\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
return sasa_add(&tanabata->sasahyou, path);
|
return sasa_add(&tanabata->sasahyou, path);
|
||||||
}
|
}
|
||||||
|
|
||||||
int tanabata_sasa_rem_by_id(Tanabata *tanabata, uint64_t sasa_id) {
|
int tanabata_sasa_rem_by_id(Tanabata *tanabata, uint64_t sasa_id) {
|
||||||
return sasa_rem_by_id(&tanabata->sasahyou, sasa_id);
|
return sasa_rem(&tanabata->sasahyou, sasa_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
int tanabata_sasa_rem_by_path(Tanabata *tanabata, const char *path) {
|
int tanabata_sasa_rem_by_path(Tanabata *tanabata, const char *path) {
|
||||||
return sasa_rem_by_path(&tanabata->sasahyou, path);
|
Sasa *current_sasa;
|
||||||
|
for (uint64_t i = 0; i < tanabata->sasahyou.size; i++) {
|
||||||
|
current_sasa = tanabata->sasahyou.database + i;
|
||||||
|
if (current_sasa->id != HOLE_ID && strcmp(current_sasa->path, path) == 0) {
|
||||||
|
return sasa_rem(&tanabata->sasahyou, current_sasa->id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fprintf(stderr, "Failed to remove sasa: target sasa does not exist\n");
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,15 +1,30 @@
|
|||||||
|
#include <string.h>
|
||||||
#include "../../include/tanabata.h"
|
#include "../../include/tanabata.h"
|
||||||
|
|
||||||
int tanabata_tanzaku_add(Tanabata *tanabata, const char *name, const char *alias, const char *description) {
|
int tanabata_tanzaku_add(Tanabata *tanabata, const char *name, const char *description) {
|
||||||
return tanzaku_add(&tanabata->sappyou, name, alias, description);
|
for (uint64_t i = 0; i < tanabata->sappyou.size; i++) {
|
||||||
|
if (tanabata->sappyou.database[i].id != HOLE_ID && strcmp(tanabata->sappyou.database[i].name, name) == 0) {
|
||||||
|
fprintf(stderr, "Failed to add tanzaku: target tanzaku is already added\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return tanzaku_add(&tanabata->sappyou, name, description);
|
||||||
}
|
}
|
||||||
|
|
||||||
int tanabata_tanzaku_rem_by_id(Tanabata *tanabata, uint64_t tanzaku_id) {
|
int tanabata_tanzaku_rem_by_id(Tanabata *tanabata, uint64_t tanzaku_id) {
|
||||||
return tanzaku_rem_by_id(&tanabata->sappyou, tanzaku_id);
|
return tanzaku_rem(&tanabata->sappyou, tanzaku_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
int tanabata_tanzaku_rem_by_name(Tanabata *tanabata, const char *name) {
|
int tanabata_tanzaku_rem_by_name(Tanabata *tanabata, const char *name) {
|
||||||
return tanzaku_rem_by_name(&tanabata->sappyou, name);
|
Tanzaku *current_tanzaku;
|
||||||
|
for (uint64_t i = 0; i < tanabata->sappyou.size; i++) {
|
||||||
|
current_tanzaku = tanabata->sappyou.database + i;
|
||||||
|
if (current_tanzaku->id != HOLE_ID && strcmp(current_tanzaku->name, name) == 0) {
|
||||||
|
return tanzaku_rem(&tanabata->sappyou, current_tanzaku->id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fprintf(stderr, "Failed to remove tanzaku: target tanzaku does not exist\n");
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int tanabata_tanzaku_rem_by_alias(Tanabata *tanabata, const char *alias) {
|
int tanabata_tanzaku_rem_by_alias(Tanabata *tanabata, const char *alias) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user