class CCL::Logging

#include <logging.h>

class Logging
{
public:
    // methods

    static void fatalf (CStringPtr message, ...);
    static void errorf (CStringPtr message, ...);
    static void warningf (CStringPtr message, ...);
    static void infof (CStringPtr message, ...);
    static void debugf (CStringPtr message, ...);
    static void tracef (CStringPtr message, ...);
    static void fatal (StringRef message);
    static void fatal (StringRef message, VariantRef arg1);
    static void fatal (StringRef message, VariantRef arg1, VariantRef arg2);

    static void fatal (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3
    );

    static void fatal (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3,
        VariantRef arg4
    );

    static void error (StringRef message);
    static void error (StringRef message, VariantRef arg1);
    static void error (StringRef message, VariantRef arg1, VariantRef arg2);

    static void error (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3
    );

    static void error (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3,
        VariantRef arg4
    );

    static void warning (StringRef message);
    static void warning (StringRef message, VariantRef arg1);
    static void warning (StringRef message, VariantRef arg1, VariantRef arg2);

    static void warning (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3
    );

    static void warning (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3,
        VariantRef arg4
    );

    static void info (StringRef message);
    static void info (StringRef message, VariantRef arg1);
    static void info (StringRef message, VariantRef arg1, VariantRef arg2);

    static void info (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3
    );

    static void info (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3,
        VariantRef arg4
    );

    static void debug (StringRef message);
    static void debug (StringRef message, VariantRef arg1);
    static void debug (StringRef message, VariantRef arg1, VariantRef arg2);

    static void debug (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3
    );

    static void debug (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3,
        VariantRef arg4
    );

    static void trace (StringRef message);
    static void trace (StringRef message, VariantRef arg1);
    static void trace (StringRef message, VariantRef arg1, VariantRef arg2);

    static void trace (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3
    );

    static void trace (
        StringRef message,
        VariantRef arg1,
        VariantRef arg2,
        VariantRef arg3,
        VariantRef arg4
    );
};