diff options
Diffstat (limited to 'tapset')
-rw-r--r-- | tapset/indent-default.stp | 1 | ||||
-rw-r--r-- | tapset/indent.stp | 22 |
2 files changed, 23 insertions, 0 deletions
diff --git a/tapset/indent-default.stp b/tapset/indent-default.stp new file mode 100644 index 00000000..fb9ff572 --- /dev/null +++ b/tapset/indent-default.stp @@ -0,0 +1 @@ +function __indent_timestamp() { return gettimeofday_us() } diff --git a/tapset/indent.stp b/tapset/indent.stp new file mode 100644 index 00000000..dface781 --- /dev/null +++ b/tapset/indent.stp @@ -0,0 +1,22 @@ +global _indent_counters, _indent_timestamps + +function _generic_indent (idx, delta) +{ + ts = __indent_timestamp () + if (! _indent_counters[idx]) _indent_timestamps[idx] = ts + + # pre-increment for positive delta and post-decrement for negative delta + x = _indent_counters[idx] + (delta > 0 ? delta : 0) + _indent_counters[idx] += delta + + r = sprintf("%6d %s(%d):", (ts - _indent_timestamps[idx]), + execname(), tid()) + for (i=1; i<x; i++) r .= " " + + return r +} + +function thread_indent (delta) +{ + return _generic_indent (tid(), delta) +} |