about summary refs log tree commit diff
path: root/src/rt/rust_srv.h
blob: 7037007e78c39a02def4eae1cf0dee9b3db84071 (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
29
30
// -*- c++ -*-
#ifndef RUST_SRV_H
#define RUST_SRV_H

#include "rust_internal.h"

class rust_srv {
public:
    rust_env *env;
    memory_region local_region;
    virtual void log(char const *msg);
    virtual void fatal(char const *expression,
        char const *file,
        size_t line,
        char const *format,
        ...);
    virtual void warning(char const *expression,
        char const *file,
        size_t line,
        char const *format,
        ...);
    virtual void free(void *);
    virtual void *malloc(size_t);
    virtual void *realloc(void *, size_t);
    rust_srv(rust_env *);
    virtual ~rust_srv();
    virtual rust_srv *clone();
};

#endif /* RUST_SRV_H */