Optimize file size

This commit is contained in:
Reece Wilson 2021-10-07 00:40:55 +01:00
parent 0168bc4d0b
commit 8200e97240
2 changed files with 27 additions and 781 deletions

File diff suppressed because it is too large Load Diff

View File

@ -47,6 +47,7 @@ textBuffer +=
*/
#define AU_FE_EXPAND(exp) exp
#define AU_FE_ERROR(exp) ERROR. CHECK PARAMETER COUNT. DID YOU FORGET A COMMA?
`
forN(subn, function(subN) {
@ -54,6 +55,8 @@ forN(subn, function(subN) {
var suffix = subN != 1 ? "_" + (subN): ""
var suffix2 = subN != 1 ? "_" + (subN): ""
var re = Math.min(127 - 3, n * subN)
var ignoreList = {}
var ignoreList2 = {}
forN(re, function(i) {
if (i == 0) textBuffer += `#define AU_FE_0${suffix}(prefix) \n`
@ -72,12 +75,11 @@ forN(subn, function(subN) {
}
} else {
textBuffer += `#define AU_FE_${i}${suffix}(prefix, ${X}, ...) Macro Jump Error\n`
ignoreList[`AU_FE_${i}${suffix}`] = true
}
var I2 = i + 1
if (i < subN) {
textBuffer += `#define AU_FE_${i}_FIRST${suffix2}(first, prefix, ${X}) \n`
} else if (I2 % (subN) == 0) {
if ((i - 1) == subN) {
@ -85,6 +87,8 @@ forN(subn, function(subN) {
} else {
textBuffer += `#define AU_FE_${i}_FIRST${suffix2}(first, prefix, ${X}, ...) first(${X}) AU_FE_EXPAND(AU_FE_${iM1Translated2}${suffix}(prefix, __VA_ARGS__))\n`
}
} else {
ignoreList2[`AU_FE_${i}_FIRST${suffix2}`] = true
}
}
})
@ -94,6 +98,10 @@ forN(subn, function(subN) {
var params = formatNParamPatternReverseSuffix(re, "AU_FE_", suffix)
var params2 = formatNParamPatternReverseSuffix(re, "AU_FE_", "_FIRST" + suffix)
params = params.split(", ").map((str) => { return ignoreList[str] ? "AU_FE_ERROR" : str}).join(", ")
params2 = params2.split(", ").map((str) => { return ignoreList2[str] ? "AU_FE_ERROR" : str}).join(", ")
textBuffer += `#define AU_FOR_EACH${suffix}(action, ...) AU_FE_EXPAND(AU_GET_MACRO${suffix}(_whydoweneedthis, __VA_ARGS__, ${params})(action,__VA_ARGS__))\n`
textBuffer += `#define AU_FOR_EACH_FIRST${suffix}(action, ...) AU_FE_EXPAND(AU_GET_MACRO${suffix}(_whydoweneedthis, __VA_ARGS__, ${params2})(action,__VA_ARGS__))`