parser done
This commit is contained in:
parent
5ecbfa4325
commit
30ad265779
4 changed files with 152 additions and 0 deletions
31
coders/codexion.h
Normal file
31
coders/codexion.h
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* codexion.h :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: semebrah <semebrah@student.42berlin.de> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2026/03/22 18:07:06 by semebrah #+# #+# */
|
||||
/* Updated: 2026/03/22 18:07:31 by semebrah ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#ifndef CODEXION_H
|
||||
# define CODEXION_H
|
||||
|
||||
typedef struct s_data
|
||||
{
|
||||
int number_of_coders;
|
||||
int time_to_burnout;
|
||||
int time_to_compile;
|
||||
int time_to_debug;
|
||||
int time_to_refactor;
|
||||
int number_of_compiles_required;
|
||||
int dongle_cooldown;
|
||||
int scheduler;
|
||||
} t_data;
|
||||
|
||||
// utils.h
|
||||
t_data *parse_arguments(int count, char **args);
|
||||
|
||||
#endif
|
||||
35
coders/main.c
Normal file
35
coders/main.c
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* main.c :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: semebrah <semebrah@student.42berlin.de> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2026/03/22 18:07:14 by semebrah #+# #+# */
|
||||
/* Updated: 2026/03/22 18:07:31 by semebrah ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#include "codexion.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
t_data *data;
|
||||
|
||||
data = parse_arguments(argc - 1, &argv[1]);
|
||||
if (!data)
|
||||
return (0);
|
||||
printf("d = [%d]\n", data->number_of_coders);
|
||||
printf("d = [%d]\n", data->time_to_burnout);
|
||||
printf("d = [%d]\n", data->time_to_compile);
|
||||
printf("d = [%d]\n", data->time_to_debug);
|
||||
printf("d = [%d]\n", data->time_to_refactor);
|
||||
printf("d = [%d]\n", data->number_of_compiles_required);
|
||||
printf("d = [%d]\n", data->dongle_cooldown);
|
||||
printf("d = [%d]\n", data->scheduler);
|
||||
if (data)
|
||||
free(data);
|
||||
data = NULL;
|
||||
}
|
||||
56
coders/utils.c
Normal file
56
coders/utils.c
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* utils.c :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: semebrah <semebrah@student.42berlin.de> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2026/03/22 18:07:24 by semebrah #+# #+# */
|
||||
/* Updated: 2026/03/22 18:07:31 by semebrah ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#include "codexion.h"
|
||||
#include <stddef.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
int isnumeric(char *str)
|
||||
{
|
||||
size_t i;
|
||||
|
||||
i = -1;
|
||||
while (++i < strlen(str))
|
||||
if (str[i] < '0' || str[i] > '9')
|
||||
return (0);
|
||||
return (1);
|
||||
}
|
||||
|
||||
t_data *parse_arguments(int count, char **args)
|
||||
{
|
||||
int args_int[8];
|
||||
t_data *data;
|
||||
int i;
|
||||
|
||||
if (count != 8)
|
||||
return (NULL);
|
||||
data = malloc(sizeof(t_data));
|
||||
if (!data)
|
||||
return (NULL);
|
||||
i = -1;
|
||||
while (++i < 8)
|
||||
{
|
||||
if (!isnumeric(args[i]))
|
||||
return (NULL);
|
||||
args_int[i] = atoi(args[i]);
|
||||
}
|
||||
data->number_of_coders = args_int[0];
|
||||
data->time_to_burnout = args_int[1];
|
||||
data->time_to_compile = args_int[2];
|
||||
data->time_to_debug = args_int[3];
|
||||
data->time_to_refactor = args_int[4];
|
||||
data->number_of_compiles_required = args_int[5];
|
||||
data->dongle_cooldown = args_int[6];
|
||||
data->scheduler = args_int[7];
|
||||
return (data);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue