about summary refs log tree commit diff
path: root/src/rt/rust_dom.h
diff options
context:
space:
mode:
authorMarijn Haverbeke <marijnh@gmail.com>2011-04-19 12:21:57 +0200
committerMarijn Haverbeke <marijnh@gmail.com>2011-04-19 16:57:13 +0200
commit880be6a94013ba0b7791b0ca1b6e16104f2f0a1c (patch)
treead8c673f13ec8d2d879175be1a006b08cc6d26d3 /src/rt/rust_dom.h
parent6511d471bafd446026462ce0dba8ef5e2ebf462f (diff)
Overhaul logging system in runtime
See https://github.com/graydon/rust/wiki/Logging-vision

The runtime logging categories are now treated in the same way as
modules in compiled code. Each domain now has a log_lvl that can be
used to restrict the logging from that domain (will be used to allow
logging to be restricted to a single domain).

Features dropped (can be brought back to life if there is interest):
  - Logger indentation
  - Multiple categories per log statement
  - I possibly broke some of the color code -- it confuses me
Diffstat (limited to 'src/rt/rust_dom.h')
-rw-r--r--src/rt/rust_dom.h12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/rt/rust_dom.h b/src/rt/rust_dom.h
index be3ca2f9f18..fa61aa79406 100644
--- a/src/rt/rust_dom.h
+++ b/src/rt/rust_dom.h
@@ -14,6 +14,7 @@ struct rust_dom : public kernel_owned<rust_dom>, rc_base<rust_dom>
     // glue.
     rust_crate const *root_crate;
     rust_log _log;
+    uint32_t log_lvl;
     rust_srv *srv;
     memory_region local_region;
     memory_region synchronized_region;
@@ -47,16 +48,12 @@ struct rust_dom : public kernel_owned<rust_dom>, rc_base<rust_dom>
     // Only a pointer to 'name' is kept, so it must live as long as this
     // domain.
     rust_dom(rust_kernel *kernel,
-        rust_message_queue *message_queue, rust_srv *srv,
-        rust_crate const *root_crate, const char *name);
+             rust_message_queue *message_queue, rust_srv *srv,
+             rust_crate const *root_crate, const char *name);
     ~rust_dom();
     void activate(rust_task *task);
-    void log(rust_task *task, uint32_t logbit, char const *fmt, ...);
-    void log(uint32_t logbit, char const *fmt, ...);
+    void log(rust_task *task, uint32_t level, char const *fmt, ...);
     rust_log & get_log();
-    void logptr(char const *msg, uintptr_t ptrval);
-    template<typename T>
-    void logptr(char const *msg, T* ptrval);
     void fail();
     void *malloc(size_t size);
     void *malloc(size_t size, memory_region::memory_region_type type);
@@ -83,7 +80,6 @@ struct rust_dom : public kernel_owned<rust_dom>, rc_base<rust_dom>
     int start_main_loop();
 
     void log_state();
-    static void log_all_state();
 
     rust_task *create_task(rust_task *spawner, const char *name);
 };