// File: xelia-it[P]mustache/third-party/catch2/single_include/catch2/catch.hpp
// Function: Catch::(anonymous namespace)::ConsoleAssertionPrinter::ConsoleAssertionPrinter(std::ostream&, Catch::AssertionStats const&, bool)
ConsoleAssertionPrinter(std::ostream& _stream, AssertionStats const& _stats, bool _printInfoMessages)
        : stream(_stream),
        stats(_stats),
        result(_stats.assertionResult),
        colour(Colour::None),
        message(result.getMessage()),
        messages(_stats.infoMessages),
        printInfoMessages(_printInfoMessages) {
        switch (result.getResultType()) {
        case ResultWas::Ok:
            colour = Colour::Success;
            passOrFail = "PASSED";
            //if( result.hasMessage() )
            if (_stats.infoMessages.size() == 1)
                messageLabel = "with message";
            if (_stats.infoMessages.size() > 1)
                messageLabel = "with messages";
            break;
        case ResultWas::ExpressionFailed:
            if (result.isOk()) {
                colour = Colour::Success;
                passOrFail = "FAILED - but was ok";
            } else {
                colour = Colour::Error;
                passOrFail = "FAILED";
            }
            if (_stats.infoMessages.size() == 1)
                messageLabel = "with message";
            if (_stats.infoMessages.size() > 1)
                messageLabel = "with messages";
            break;
        case ResultWas::ThrewException:
            colour = Colour::Error;
            passOrFail = "FAILED";
            messageLabel = "due to unexpected exception with ";
            if (_stats.infoMessages.size() == 1)
                messageLabel += "message";
            if (_stats.infoMessages.size() > 1)
                messageLabel += "messages";
            break;
        case ResultWas::FatalErrorCondition:
            colour = Colour::Error;
            passOrFail = "FAILED";
            messageLabel = "due to a fatal error condition";
            break;
        case ResultWas::DidntThrowException:
            colour = Colour::Error;
            passOrFail = "FAILED";
            messageLabel = "because no exception was thrown where one was expected";
            break;
        case ResultWas::Info:
            messageLabel = "info";
            break;
        case ResultWas::Warning:
            messageLabel = "warning";
            break;
        case ResultWas::ExplicitFailure:
            passOrFail = "FAILED";
            colour = Colour::Error;
            if (_stats.infoMessages.size() == 1)
                messageLabel = "explicitly with message";
            if (_stats.infoMessages.size() > 1)
                messageLabel = "explicitly with messages";
            break;
            // These cases are here to prevent compiler warnings
        case ResultWas::Unknown:
        case ResultWas::FailureBit:
        case ResultWas::Exception:
            passOrFail = "** internal error **";
            colour = Colour::Error;
            break;
        }
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movb %cl, %al
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
andb $0x1, %al
movb %al, -0x19(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x40(%rbp)
movq -0x10(%rbp), %rax
movq %rax, (%rdi)
movq -0x18(%rbp), %rax
movq %rax, 0x8(%rdi)
movq -0x18(%rbp), %rax
addq $0x8, %rax
movq %rax, 0x10(%rdi)
movl $0x0, 0x18(%rdi)
addq $0x20, %rdi
movq %rdi, -0x50(%rbp)
callq 0x52a00
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
movq %rdi, -0x48(%rbp)
callq 0x52a00
movq -0x40(%rbp), %rax
movq %rax, %rdi
addq $0x60, %rdi
movq %rdi, -0x38(%rbp)
movq 0x10(%rax), %rsi
callq 0x54e20
jmp 0x71f0d
movq -0x40(%rbp), %rdi
subq $-0x80, %rdi
movq %rdi, -0x58(%rbp)
movq -0x18(%rbp), %rsi
addq $0x98, %rsi
callq 0x8cda0
jmp 0x71f2b
movq -0x40(%rbp), %rax
movb -0x19(%rbp), %cl
andb $0x1, %cl
movb %cl, 0x98(%rax)
movq 0x10(%rax), %rdi
callq 0x549c0
movl %eax, %ecx
movl %ecx, -0x5c(%rbp)
subl $-0x1, %eax
je 0x72317
jmp 0x71f54
movl -0x5c(%rbp), %eax
testl %eax, %eax
je 0x7200c
jmp 0x71f61
movl -0x5c(%rbp), %eax
subl $0x1, %eax
je 0x72262
jmp 0x71f6f
movl -0x5c(%rbp), %eax
subl $0x2, %eax
je 0x7227d
jmp 0x71f7d
movl -0x5c(%rbp), %eax
subl $0x10, %eax
je 0x72317
jmp 0x71f8b
movl -0x5c(%rbp), %eax
subl $0x11, %eax
je 0x720a4
jmp 0x71f99
movl -0x5c(%rbp), %eax
subl $0x12, %eax
je 0x72298
jmp 0x71fa7
movl -0x5c(%rbp), %eax
subl $0x110, %eax            # imm = 0x110
je 0x72317
jmp 0x71fb7
movl -0x5c(%rbp), %eax
subl $0x111, %eax            # imm = 0x111
je 0x7215e
jmp 0x71fc7
movl -0x5c(%rbp), %eax
subl $0x112, %eax            # imm = 0x112
je 0x7222a
jmp 0x71fd7
movl -0x5c(%rbp), %eax
subl $0x210, %eax            # imm = 0x210
je 0x721f2
jmp 0x72338
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x72347
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x7233e
movq -0x40(%rbp), %rdi
movl $0x3, 0x18(%rdi)
addq $0x20, %rdi
leaq 0xcf06b(%rip), %rsi     # 0x14108d
callq 0x529d0
jmp 0x72029
movq -0x18(%rbp), %rdi
addq $0x98, %rdi
callq 0x8ed40
cmpq $0x1, %rax
jne 0x72071
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcf0dd(%rip), %rsi     # 0x14112b
callq 0x529d0
jmp 0x72055
jmp 0x72071
movq -0x58(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
callq 0x8cf60
jmp 0x7233e
movq -0x18(%rbp), %rdi
addq $0x98, %rdi
callq 0x8ed40
cmpq $0x1, %rax
jbe 0x7209f
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcf0ad(%rip), %rsi     # 0x141143
callq 0x529d0
jmp 0x7209d
jmp 0x7209f
jmp 0x72338
movq -0x40(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x54950
movb %al, -0x5d(%rbp)
jmp 0x720b6
movb -0x5d(%rbp), %al
testb $0x1, %al
jne 0x720bf
jmp 0x720de
movq -0x40(%rbp), %rdi
movl $0x3, 0x18(%rdi)
addq $0x20, %rdi
leaq 0xcefbf(%rip), %rsi     # 0x141094
callq 0x529d0
jmp 0x720dc
jmp 0x720fd
movq -0x40(%rbp), %rdi
movl $0x12, 0x18(%rdi)
addq $0x20, %rdi
leaq 0xcddab(%rip), %rsi     # 0x13fe9f
callq 0x529d0
jmp 0x720fb
jmp 0x720fd
movq -0x18(%rbp), %rdi
addq $0x98, %rdi
callq 0x8ed40
cmpq $0x1, %rax
jne 0x7212b
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcf009(%rip), %rsi     # 0x14112b
callq 0x529d0
jmp 0x72129
jmp 0x7212b
movq -0x18(%rbp), %rdi
addq $0x98, %rdi
callq 0x8ed40
cmpq $0x1, %rax
jbe 0x72159
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xceff3(%rip), %rsi     # 0x141143
callq 0x529d0
jmp 0x72157
jmp 0x72159
jmp 0x72338
movq -0x40(%rbp), %rdi
movl $0x12, 0x18(%rdi)
addq $0x20, %rdi
leaq 0xcdd2b(%rip), %rsi     # 0x13fe9f
callq 0x529d0
jmp 0x7217b
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcef1e(%rip), %rsi     # 0x1410a8
callq 0x529d0
jmp 0x72191
movq -0x18(%rbp), %rdi
addq $0x98, %rdi
callq 0x8ed40
cmpq $0x1, %rax
jne 0x721bf
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcef7a(%rip), %rsi     # 0x141130
callq 0x526e0
jmp 0x721bd
jmp 0x721bf
movq -0x18(%rbp), %rdi
addq $0x98, %rdi
callq 0x8ed40
cmpq $0x1, %rax
jbe 0x721ed
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcef64(%rip), %rsi     # 0x141148
callq 0x526e0
jmp 0x721eb
jmp 0x721ed
jmp 0x72338
movq -0x40(%rbp), %rdi
movl $0x12, 0x18(%rdi)
addq $0x20, %rdi
leaq 0xcdc97(%rip), %rsi     # 0x13fe9f
callq 0x529d0
jmp 0x7220f
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xceeac(%rip), %rsi     # 0x1410ca
callq 0x529d0
jmp 0x72225
jmp 0x72338
movq -0x40(%rbp), %rdi
movl $0x12, 0x18(%rdi)
addq $0x20, %rdi
leaq 0xcdc5f(%rip), %rsi     # 0x13fe9f
callq 0x529d0
jmp 0x72247
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcee93(%rip), %rsi     # 0x1410e9
callq 0x529d0
jmp 0x7225d
jmp 0x72338
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcecee(%rip), %rsi     # 0x140f5f
callq 0x529d0
jmp 0x72278
jmp 0x72338
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcecd8(%rip), %rsi     # 0x140f64
callq 0x529d0
jmp 0x72293
jmp 0x72338
movq -0x40(%rbp), %rdi
addq $0x20, %rdi
leaq 0xcdbf8(%rip), %rsi     # 0x13fe9f
callq 0x529d0
jmp 0x722ae
movq -0x40(%rbp), %rax
movl $0x12, 0x18(%rax)
movq -0x18(%rbp), %rdi
addq $0x98, %rdi
callq 0x8ed40
cmpq $0x1, %rax
jne 0x722e7
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcee42(%rip), %rsi     # 0x141120
callq 0x529d0
jmp 0x722e5
jmp 0x722e7
movq -0x18(%rbp), %rdi
addq $0x98, %rdi
callq 0x8ed40
cmpq $0x1, %rax
jbe 0x72315
movq -0x40(%rbp), %rdi
addq $0x40, %rdi
leaq 0xcee2c(%rip), %rsi     # 0x141138
callq 0x529d0
jmp 0x72313
jmp 0x72315
jmp 0x72338
movq -0x40(%rbp), %rdi
addq $0x20, %rdi
leaq 0xcec51(%rip), %rsi     # 0x140f77
callq 0x529d0
jmp 0x7232d
movq -0x40(%rbp), %rax
movl $0x12, 0x18(%rax)
addq $0x60, %rsp
popq %rbp
retq
movq -0x38(%rbp), %rdi
callq 0x52e58
movq -0x48(%rbp), %rdi
callq 0x52e58
movq -0x50(%rbp), %rdi
callq 0x52e58
movq -0x28(%rbp), %rdi
callq 0x52c90
nopw %cs:(%rax,%rax)