aboutsummaryrefslogtreecommitdiff
path: root/build2/file.ixx
blob: 15fa8dc30a4554d200e84f8b463b38b133f9a85d (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      : build2/file.ixx -*- C++ -*-
// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

namespace build2
{
  inline bool
  source_once (scope& root, scope& base, const path& bf)
  {
    return source_once (root, base, bf, base);
  }

  const target*
  import (const prerequisite_key&, bool existing);

  inline const target&
  import (const prerequisite_key& pk)
  {
    assert (phase == run_phase::match);
    return *import (pk, false);
  }

  inline const target*
  import_existing (const prerequisite_key& pk)
  {
    assert (phase == run_phase::match || phase == run_phase::execute);
    return import (pk, true);
  }
}