(SOC) Storage Only Commit - Wed 26 Jun 09:14:47 CST 2024
This commit is contained in:
90
main.c
90
main.c
@@ -2,7 +2,7 @@
|
|||||||
#include <Compound/string.h>
|
#include <Compound/string.h>
|
||||||
#include <Compound/var.h>
|
#include <Compound/var.h>
|
||||||
|
|
||||||
Status Main(Array type(String) *args)
|
Status Main(String *args)
|
||||||
{
|
{
|
||||||
nonull(args, apply(UnavailableParameter));
|
nonull(args, apply(UnavailableParameter));
|
||||||
|
|
||||||
@@ -12,47 +12,65 @@ Status Main(Array type(String) *args)
|
|||||||
int main(int argc, const char **argv)
|
int main(int argc, const char **argv)
|
||||||
{
|
{
|
||||||
state(!argc || !argv, Main(NULL).value);
|
state(!argc || !argv, Main(NULL).value);
|
||||||
|
|
||||||
/* Construct argv. */
|
/* Establish arguments. */
|
||||||
Array type(String) Arguments;
|
String arguments[argc];
|
||||||
notok(Array_Create(&Arguments, argc, sizeof(String)), {
|
for (register int i = 0; i < argc; i++) {
|
||||||
PrintStatusDump(apply(annot(_,
|
notok(StringUtils_FromCharBuff(&arguments[i], argv[i]), {
|
||||||
"Failed to create array for argv.")));
|
PrintStatusDump(_);
|
||||||
return _.value;
|
|
||||||
});
|
|
||||||
|
|
||||||
/* Assigning contents from argv. */
|
|
||||||
for (register int i = 0; i < Arguments.len; i++) {
|
|
||||||
String Current;
|
|
||||||
notok(String_Create(&Current, strlen(argv[i])), {
|
|
||||||
PrintStatusDump(apply(annot(_,
|
|
||||||
"Failed to create string instance for contents from argv.")));
|
|
||||||
return _.value;
|
|
||||||
})
|
})
|
||||||
notok(StringUtils_FromCharBuff(&Current, argv[i]), {
|
|
||||||
PrintStatusDump(apply(annot(_,
|
|
||||||
"Failed to convert char buffer into string.")));
|
|
||||||
(void)String_Delete(&Current);
|
|
||||||
return _.value;
|
|
||||||
})
|
|
||||||
/* Set value with Current. */
|
|
||||||
notok(Array_SetIdx(&Arguments, &Current.data.members[0], i), {
|
|
||||||
PrintStatusDump(apply(annot(_,
|
|
||||||
"Failed to set member for "nameof(Arguments)".")));
|
|
||||||
return _.value;
|
|
||||||
})
|
|
||||||
(void)String_Delete(&Current);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Start the programme. */
|
|
||||||
int rtn;
|
/* Prepare to return. */
|
||||||
notok(Main(&Arguments), {
|
int rtn = 0;
|
||||||
|
notok(Main(arguments), {
|
||||||
PrintStatusDump(_);
|
PrintStatusDump(_);
|
||||||
rtn = _.value;
|
rtn = _.value;
|
||||||
})
|
})
|
||||||
|
|
||||||
/* Destruct argv. */
|
|
||||||
(void)Array_Delete(&Arguments);
|
|
||||||
|
|
||||||
return rtn;
|
return rtn;
|
||||||
|
|
||||||
|
// /* Construct argv. */
|
||||||
|
// Array type(String) Arguments;
|
||||||
|
// notok(Array_Create(&Arguments, argc, sizeof(String)), {
|
||||||
|
// PrintStatusDump(apply(annot(_,
|
||||||
|
// "Failed to create array for argv.")));
|
||||||
|
// return _.value;
|
||||||
|
// });
|
||||||
|
|
||||||
|
// /* Assigning contents from argv. */
|
||||||
|
// for (register int i = 0; i < Arguments.len; i++) {
|
||||||
|
// String Current;
|
||||||
|
// notok(String_Create(&Current, strlen(argv[i])), {
|
||||||
|
// PrintStatusDump(apply(annot(_,
|
||||||
|
// "Failed to create string instance for contents from argv.")));
|
||||||
|
// return _.value;
|
||||||
|
// })
|
||||||
|
// notok(StringUtils_FromCharBuff(&Current, argv[i]), {
|
||||||
|
// PrintStatusDump(apply(annot(_,
|
||||||
|
// "Failed to convert char buffer into string.")));
|
||||||
|
// (void)String_Delete(&Current);
|
||||||
|
// return _.value;
|
||||||
|
// })
|
||||||
|
// /* Set value with Current. */
|
||||||
|
// notok(Array_SetIdx(&Arguments, &Current.data.members[0], i), {
|
||||||
|
// PrintStatusDump(apply(annot(_,
|
||||||
|
// "Failed to set member for "nameof(Arguments)".")));
|
||||||
|
// return _.value;
|
||||||
|
// })
|
||||||
|
// (void)String_Delete(&Current);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// /* Start the programme. */
|
||||||
|
// int rtn;
|
||||||
|
// notok(Main(&Arguments), {
|
||||||
|
// PrintStatusDump(_);
|
||||||
|
// rtn = _.value;
|
||||||
|
// })
|
||||||
|
|
||||||
|
// /* Destruct argv. */
|
||||||
|
// (void)Array_Delete(&Arguments);
|
||||||
|
|
||||||
|
// return rtn;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user