~vanvugt/mir/unique-id

« back to all changes in this revision

Viewing changes to src/shared/unique_id_generator.cpp

  • Committer: Daniel van Vugt
  • Date: 2013-04-16 08:45:22 UTC
  • Revision ID: daniel.van.vugt@canonical.com-20130416084522-1irr58cuzpbf7vug
Convert Check into Validator and invert the logic... to be more logical.

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
 
22
22
using namespace mir;
23
23
 
24
 
UniqueIdGenerator::UniqueIdGenerator(Check const check, Id error, Id min,
 
24
UniqueIdGenerator::UniqueIdGenerator(Validator validator, Id error, Id min,
25
25
                                     Id max)
26
26
    : min_id(min),
27
27
      max_id(max),
28
28
      invalid_id(error),
29
 
      id_in_use(check),
 
29
      is_valid(validator),
30
30
      next_id(min_id)
31
31
{
32
32
}
41
41
    int const range = max_id - min_id;
42
42
    int tries = 1;
43
43
 
44
 
    while (ret == invalid_id || id_in_use(ret) || ret < min_id || ret > max_id)
 
44
    while (ret == invalid_id || !is_valid(ret) || ret < min_id || ret > max_id)
45
45
    {
46
46
        tries++;
47
47
        if (tries > range)