aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/cmd.h
blob: 6249b1d892432471546f569c328690251bd6cfc5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#ifndef CMD_H
#define CMD_H

typedef void (*cgit_cmd_fn)(void);

struct cgit_cmd {
	const char *name;
	cgit_cmd_fn fn;
	unsigned int want_repo:1,
		want_vpath:1,
		is_clone:1;
};

extern struct cgit_cmd *cgit_get_cmd(void);

#endif /* CMD_H */
General Public License as published by * the Free Software Foundation, version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include "exceptions.hpp" #include <utility> namespace mastodonpp { using std::to_string; using std::move; CURLException::CURLException(const CURLcode &error, string message) : error_code{error} , _message{move(message)} {} CURLException::CURLException(const CURLcode &error, string message, string error_buffer) : error_code{error} , _message{move(message)} , _error_buffer{move(error_buffer)} {} CURLException::CURLException(string message) : error_code{CURLE_OK} , _message{move(message)} {} const char *CURLException::what() const noexcept { static string error_string{"libCURL error: "}; if (error_code != CURLE_OK) { error_string += to_string(error_code) + " - "; } error_string += _message; if (!_error_buffer.empty()) { error_string += " [" + _error_buffer + "]"; } return error_string.c_str(); } } // namespace mastodonpp