- Main Page
- Namespaces
- Classes
- Files

# artifact.cpp

Go to the documentation of this file.

    00001
    00003 #include "artifact.hpp"
    00004 #include "artifact_impl.hpp"
    00005
    00006 artifact::artifact() : pimpl_(new artifact_impl()) {}
    00007
    00008 artifact::artifact(std::string const& name)
    00009 : pimpl_(new artifact_impl(name))
    00010 {}
    00011
    00012 artifact::artifact(artifact const& a)
    00013 : pimpl_(a.pimpl_)
    00014 {
    00015    pimpl_->add_ref();
    00016 }
    00017
    00018 artifact::~artifact()
    00019 {
    00020    pimpl_->delete_ref();
    00021 }
    00022
    00023 artifact& artifact::operator=(artifact const& a)
    00024 {
    00025    a.pimpl_->add_ref();
    00026    pimpl_->delete_ref();
    00027    pimpl_ = a.pimpl_;
    00028    return *this;
    00029 }
    00030
    00031 std::string const& artifact::name()
    00032 const
    00033 {
    00034    return pimpl_->name();
    00035 }
    00036
    00037 std::time_t artifact::mod_time()
    00038 const
    00039 {
    00040    return pimpl_->mod_time();
    00041 }
    00042
    00043 std::string artifact::expand(std::string str)
    00044 const
    00045 {
    00046    return pimpl_->expand(str);
    00047 }
    00048
    00049 void artifact::build()
    00050 {
    00051    pimpl_->build();
    00052 }
    00053
    00054 std::time_t artifact::get_mod_time()
    00055 {
    00056    return pimpl_->get_mod_time();
    00057 }
    00058
    00059 void artifact::store_variable(std::string const& name, std::string const& value)
    00060 {
    00061     pimpl_->store_variable(name, value);
    00062 }