1 #ifndef CASM_ProjectBuilder
2 #define CASM_ProjectBuilder
34 if(!boost::regex_match(
m_name, boost::regex(R
"([_a-zA-Z]\w*)"))) {
35 throw std::runtime_error(
36 std::string(
"Error constructing ProjectBuilder.\n") +
37 " Invalid Project name: '" +
m_name +
"'\n"
38 " Must be a valid C++ identifier: \n"
39 " - only alphanumeric characters and underscores allowed\n"
40 " - cannot start with a number");
70 std::vector<std::string> m_properties {
"relaxed_energy"};
ProjectBuilder & set_crystallography_tol(double _tol)
ProjectBuilder(fs::path _root, std::string _name, std::string _property)
Construct a CASM ProjectBuilder.
ProjectBuilder & set_lin_alg_tol(double _tol)
Sets up directories and files for a new CASM project.
void build() const
Builds a new CASM project.
double m_crystallography_tol