mirror of
https://github.com/XRPLF/rippled.git
synced 2025-12-06 17:27:55 +00:00
Don't compile ldb tool into static library
Summary: This is first step of my effort to reduce size of librocksdb.a for use in mobile. ldb object files are huge and are ment to be used as a command line tool. I moved them to `tools/` directory and include them only when compiling `ldb` This diff reduced librocksdb.a from 42MB to 39MB on my mac (not stripped). Test Plan: ran ldb Reviewers: dhruba, haobo, sdong, ljin, yhchiang Reviewed By: yhchiang CC: leveldb Differential Revision: https://reviews.facebook.net/D17823
This commit is contained in:
76
tools/ldb_cmd_execute_result.h
Normal file
76
tools/ldb_cmd_execute_result.h
Normal file
@@ -0,0 +1,76 @@
|
||||
// Copyright (c) 2013, Facebook, Inc. All rights reserved.
|
||||
// This source code is licensed under the BSD-style license found in the
|
||||
// LICENSE file in the root directory of this source tree. An additional grant
|
||||
// of patent rights can be found in the PATENTS file in the same directory.
|
||||
//
|
||||
#pragma once
|
||||
|
||||
namespace rocksdb {
|
||||
|
||||
class LDBCommandExecuteResult {
|
||||
public:
|
||||
enum State {
|
||||
EXEC_NOT_STARTED = 0, EXEC_SUCCEED = 1, EXEC_FAILED = 2,
|
||||
};
|
||||
|
||||
LDBCommandExecuteResult() {
|
||||
state_ = EXEC_NOT_STARTED;
|
||||
message_ = "";
|
||||
}
|
||||
|
||||
LDBCommandExecuteResult(State state, std::string& msg) {
|
||||
state_ = state;
|
||||
message_ = msg;
|
||||
}
|
||||
|
||||
std::string ToString() {
|
||||
std::string ret;
|
||||
switch (state_) {
|
||||
case EXEC_SUCCEED:
|
||||
break;
|
||||
case EXEC_FAILED:
|
||||
ret.append("Failed: ");
|
||||
break;
|
||||
case EXEC_NOT_STARTED:
|
||||
ret.append("Not started: ");
|
||||
}
|
||||
if (!message_.empty()) {
|
||||
ret.append(message_);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
void Reset() {
|
||||
state_ = EXEC_NOT_STARTED;
|
||||
message_ = "";
|
||||
}
|
||||
|
||||
bool IsSucceed() {
|
||||
return state_ == EXEC_SUCCEED;
|
||||
}
|
||||
|
||||
bool IsNotStarted() {
|
||||
return state_ == EXEC_NOT_STARTED;
|
||||
}
|
||||
|
||||
bool IsFailed() {
|
||||
return state_ == EXEC_FAILED;
|
||||
}
|
||||
|
||||
static LDBCommandExecuteResult SUCCEED(std::string msg) {
|
||||
return LDBCommandExecuteResult(EXEC_SUCCEED, msg);
|
||||
}
|
||||
|
||||
static LDBCommandExecuteResult FAILED(std::string msg) {
|
||||
return LDBCommandExecuteResult(EXEC_FAILED, msg);
|
||||
}
|
||||
|
||||
private:
|
||||
State state_;
|
||||
std::string message_;
|
||||
|
||||
bool operator==(const LDBCommandExecuteResult&);
|
||||
bool operator!=(const LDBCommandExecuteResult&);
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user