1============== NonTableObjectsAreSkipped.fbs ============
2include "${DIR}/tracing_schema_common.fbs";
3
4attribute "priority";
5
6enum Color : byte { Red, Green, Blue }
7
8struct Vec3 {
9  x: float;
10  y: float;
11  z: float;
12}
13
14table Monster(tag: "MONS") {
15  hp: int32;
16}
17
18============== diagnosis ============
19
20============== result ============
21// Autogenerated by tracing_traits_generator, do not edit
22
23#ifndef THIRD_PARTY_FCP_TRACING_TOOLS_TESTDATA_NONTABLEOBJECTSARESKIPPED_H
24#define THIRD_PARTY_FCP_TRACING_TOOLS_TESTDATA_NONTABLEOBJECTSARESKIPPED_H
25
26#ifdef FLATBUFFERS_GENERATED_TRACINGSCHEMA_H_
27#undef FLATBUFFERS_GENERATED_TRACINGSCHEMA_H_
28#endif
29#include "${DIR}/tools/testdata/NonTableObjectsAreSkipped_generated.h"
30#include "absl/strings/string_view.h"
31#include "${DIR}/tracing_severity.h"
32#include "${DIR}/tracing_traits.h"
33#include "flatbuffers/minireflect.h"
34#include "flatbuffers/idl.h"
35#include "${BASE}/platform.h"
36
37namespace fcp {
38
39template<> class TracingTraits<Monster>: public TracingTraitsBase {
40 public:
41  static constexpr TracingTag kTag = TracingTag("MONS");
42  static constexpr TracingSeverity kSeverity = fcp::TracingSeverity::kInfo;
43  static constexpr bool kIsSpan = false;
44  const char* Name() const override { return "Monster"; }
45  TracingSeverity Severity() const override {
46    return fcp::TracingSeverity::kInfo;
47  }
48  std::string TextFormat(const flatbuffers::DetachedBuffer& buf) const override {
49    return flatbuffers::FlatBufferToString(buf.data(), MonsterTypeTable());
50  }
51  std::string JsonStringFormat(const uint8_t* flatbuf_bytes) const override {
52    flatbuffers::Parser parser;
53    std::string schema_file;
54    std::string fbs_file = "${RUNFILE_PATH}/tools/testdata/NonTableObjectsAreSkipped.fbs";
55    flatbuffers::LoadFile(GetDataPath(fbs_file).c_str(), true, &schema_file);
56    std::string schema_path_common = GetDataPath("${DIR}/tracing_schema_common.fbs");
57    std::string directory_common = schema_path_common.substr(0, schema_path_common.find("${DIR}/tracing_schema_common.fbs"));
58    const char *include_directories[] = {
59                 directory_common.c_str(), nullptr};
60    parser.Parse(schema_file.c_str(), include_directories);
61    std::string jsongen;
62    parser.SetRootType("Monster");
63    GenerateText(parser, flatbuf_bytes, &jsongen);
64    return jsongen;
65  }
66  static flatbuffers::Offset<Monster> Create(std::int32_t hp, flatbuffers::FlatBufferBuilder* fbb) {
67    return CreateMonster(*fbb, hp);
68  }
69  using TupleType = std::tuple<std::int32_t>;
70  static TupleType MakeTuple(const Monster* table) {
71    return std::make_tuple(table->hp());
72  }
73};
74static internal::TracingTraitsRegistrar<Monster> registrar_Monster;
75} // namespace fcp
76
77#endif  // THIRD_PARTY_FCP_TRACING_TOOLS_TESTDATA_NONTABLEOBJECTSARESKIPPED_H
78
79