mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-29 13:23:53 +08:00
33 lines
669 B
C++
33 lines
669 B
C++
// Prototypes for executing builtin_time function.
|
|
#ifndef FISH_TIMER_H
|
|
#define FISH_TIMER_H
|
|
|
|
#include <sys/resource.h>
|
|
#include <sys/time.h>
|
|
#include <sys/types.h>
|
|
|
|
#include <chrono>
|
|
|
|
#include "common.h"
|
|
|
|
class parser_t;
|
|
struct io_streams_t;
|
|
|
|
cleanup_t push_timer(bool enabled);
|
|
|
|
struct timer_snapshot_t {
|
|
public:
|
|
struct rusage cpu_fish;
|
|
struct rusage cpu_children;
|
|
std::chrono::time_point<std::chrono::steady_clock> wall;
|
|
|
|
static timer_snapshot_t take();
|
|
static wcstring print_delta(const timer_snapshot_t &t1, const timer_snapshot_t &t2,
|
|
bool verbose = false);
|
|
|
|
private:
|
|
timer_snapshot_t() {}
|
|
};
|
|
|
|
#endif
|