I think blow api ( If use REST API)
/history/transaction?uuid=aaaa
cd path/to/flatbuffers; | |
cd grpc; | |
flatc --cpp --grpc ../tests/monster_test.fbs; | |
rm monster_test_generated.h; # to include flatbuffers/tests/monster_test_generated.h | |
g++ -std=c++14 -Wl,-no-as-needed -lgrpc -lgrpc++ -lgpr -pthread tests/grpctest.cpp monster_test.grpc.fb.cc -I../tests/ -o grpctest; | |
./grpctest; | |
# and | |
valgrind ./grpctest; |
r = [0] * 7 | |
pc = 1 | |
def M(i,j): | |
def _m(): | |
r[i] = r[j] | |
return False | |
return _m | |
def J(i,j,k): |
\*/ | |
*|* *O* | |
*\*/* /*\ | |
-*O*- ..|.. | | |
*/*\* ..*|*.. | ..|.. | |
*|* .>*\*/*<. | ..*|*.. | |
| .--*O*--. | .>*\*/*<. | |
| .>*/*\*<. | .--*O*--. | |
| /.*|*.\ | .>*/*\*<. |
#include <iostream> | |
#include <functional> | |
#include <algorithm> | |
#include <vector> | |
#include <list> | |
#include <array> | |
#include <string> | |
#include <initializer_list> | |
using std::cout; |
#include <iostream> | |
#include <functional> | |
#include <algorithm> | |
#include <vector> | |
#include <list> | |
#include <array> | |
#include <string> | |
#include <initializer_list> | |
#include <initializer_list> |
#include <iostream> | |
#include <string> | |
#include <type_traits> | |
#include <tuple> | |
#include <unordered_map> | |
#include <vector> | |
#include <algorithm> | |
#include <memory> | |
class Object{ |
#include <iostream> | |
#include <type_traits> | |
class Base{ | |
public: | |
int get(){ return 1234; } | |
}; | |
class A{}; | |
class B : public Base{}; |
#include <iostream> | |
#include <string> | |
#include <type_traits> | |
struct Rules { | |
struct violation {}; | |
struct false_type { static const bool value = false; }; | |
struct true_type { static const bool value = true; }; | |
// Rule 1: has "std::string getName()" |
Adaptive LL(*) Parsing: The Power of Dynamic Analysis
最近のパーサ PEG, LL(*), GLR, GLL
でもまだまだ解決できない問題がある。
例えば副作用を持つ動作をサポートすることや、パフォーマンスを予測できず、速度が遅くなってしまう、直感的ではない動作をしてしまう等々である。