X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2Fstlplus%2Fstrings%2Fprint_smart_ptr.tpp;h=e57fc984aace34798bfdbf4075d4d8f9ea6efe23;hp=51877c70963efbd02547c2925a62e47405651169;hb=5846afb00833cc72fe72422ca896d2387c712cb4;hpb=a97500609dc3c1b11f9786d32bc458eb00de4c36 diff --git a/src/stlplus/strings/print_smart_ptr.tpp b/src/stlplus/strings/print_smart_ptr.tpp index 51877c7..e57fc98 100644 --- a/src/stlplus/strings/print_smart_ptr.tpp +++ b/src/stlplus/strings/print_smart_ptr.tpp @@ -1,74 +1,74 @@ -//////////////////////////////////////////////////////////////////////////////// - -// Author: Andy Rushton -// Copyright: (c) Southampton University 1999-2004 -// (c) Andy Rushton 2004-2009 -// License: BSD License, see ../docs/license.html - -//////////////////////////////////////////////////////////////////////////////// - -namespace stlplus -{ - - template - void print_smart_ptr(std::ostream& device, - const smart_ptr& value, - S print_fn, - const std::string& null_string, - const std::string& prefix, - const std::string& suffix) - { - if (value) - { - device << prefix; - print_fn(device, *value); - device << suffix; - } - else - { - device << null_string; - } - } - - template - void print_smart_ptr_clone(std::ostream& device, - const smart_ptr_clone& value, - S print_fn, - const std::string& null_string, - const std::string& prefix, - const std::string& suffix) - { - if (value) - { - device << prefix; - print_fn(device, *value); - device << suffix; - } - else - { - device << null_string; - } - } - - template - void print_smart_ptr_nocopy(std::ostream& device, - const smart_ptr_nocopy& value, - S print_fn, - const std::string& null_string, - const std::string& prefix, - const std::string& suffix) - { - if (value) - { - device << prefix; - print_fn(device, *value); - device << suffix; - } - else - { - device << null_string; - } - } - -} // end namespace stlplus - +//////////////////////////////////////////////////////////////////////////////// + +// Author: Andy Rushton +// Copyright: (c) Southampton University 1999-2004 +// (c) Andy Rushton 2004-2009 +// License: BSD License, see ../docs/license.html + +//////////////////////////////////////////////////////////////////////////////// + +namespace stlplus +{ + + template + void print_smart_ptr(std::ostream& device, + const smart_ptr& value, + S print_fn, + const std::string& null_string, + const std::string& prefix, + const std::string& suffix) + { + if (value) + { + device << prefix; + print_fn(device, *value); + device << suffix; + } + else + { + device << null_string; + } + } + + template + void print_smart_ptr_clone(std::ostream& device, + const smart_ptr_clone& value, + S print_fn, + const std::string& null_string, + const std::string& prefix, + const std::string& suffix) + { + if (value) + { + device << prefix; + print_fn(device, *value); + device << suffix; + } + else + { + device << null_string; + } + } + + template + void print_smart_ptr_nocopy(std::ostream& device, + const smart_ptr_nocopy& value, + S print_fn, + const std::string& null_string, + const std::string& prefix, + const std::string& suffix) + { + if (value) + { + device << prefix; + print_fn(device, *value); + device << suffix; + } + else + { + device << null_string; + } + } + +} // end namespace stlplus +