aboutsummaryrefslogtreecommitdiff
path: root/libbutl/path-io.hxx
blob: 719456d8154041ebac9f604a3f551cfb63020267 (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
// file      : libbutl/path-io.hxx -*- C++ -*-
// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

#ifndef LIBBUTL_PATH_IO_HXX
#define LIBBUTL_PATH_IO_HXX

#include <ostream>

#include <libbutl/path.hxx>

namespace butl
{
  // This is the default path IO implementation. The reason it is
  // separate is because one often wants a custom implementation.
  // For example, we may want to print paths as relative to the
  // working directory. Or we may want to print '~' for the home
  // directory prefix. Or we may want to print dir_path with a
  // trailing '/'.
  //
  template <typename C, typename K>
  inline std::basic_ostream<C>&
  operator<< (std::basic_ostream<C>& os, basic_path<C, K> const& p)
  {
    return os << p.string ();
  }
}

#endif // LIBBUTL_PATH_IO_HXX