interface OiniOptions<TA, TB, TC> {
operators: { [operator: string]: (a: TA, b: TB) => TC };
}
export const oini =
<TA, TB, TC>(options: OiniOptions<TA, TB, TC>) =>
(template: TemplateStringsArray, a: TA, b: TB) => {
const operator = template[1].trim();
const operatorFunction = options.operators[operator];
if (!operatorFunction) {
throw new Error(`Operator ${operator} not found`);
}
return operatorFunction(a, b);
};
v
floor(sqrt((2^31 - 1) / sizeof(int))) == 23170
floor(sqrt((2^31 - 1) / sizeof(int))) == 23170
sizeof(int)
or sizeof(CTile)
but both are 4 bytesradv/amdgpu: Not enough memory for command submission.
start_video
command, to start recording to a video file with a specific filename, instead of always using the current timestamp.
Add log messages to start_video
and stop_video
commands to indicate success and errors.
Make the CClient::StartVideo
function non-static
and reduce duplicate code in the Con_StartVideo
function.
Determine the video filename outside of the CVideo
constructor, same as for demos.