summaryrefslogtreecommitdiff
path: root/src/debug.cc
blob: 7b97b2f0bb405dad5f1e6f7c7a345c204f497c6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include "debug.hh"

#include "assert.hh"
#include "buffer_manager.hh"
#include "editor.hh"

namespace Kakoune
{

static Buffer& get_or_create_debug_buffer()
{
    static const String debug_buffer_name("*debug*");
    Buffer* buffer = BufferManager::instance().get_buffer_ifp(debug_buffer_name);

    if (not buffer)
        buffer = new Buffer(debug_buffer_name, Buffer::Flags::NoUndo);

    kak_assert(buffer);
    return *buffer;
}

void write_debug(const String& str)
{
    Buffer& buffer = get_or_create_debug_buffer();
    buffer.insert(buffer.end(), str);
}

}