|
||||
File indexing completed on 2025-01-31 10:11:56
0001 // Protocol Buffers - Google's data interchange format 0002 // Copyright 2008 Google Inc. All rights reserved. 0003 // 0004 // Use of this source code is governed by a BSD-style 0005 // license that can be found in the LICENSE file or at 0006 // https://developers.google.com/open-source/licenses/bsd 0007 0008 // Author: seongkim@google.com (Seong Beom Kim) 0009 // Based on original Protocol Buffers design by 0010 // Sanjay Ghemawat, Jeff Dean, and others. 0011 0012 #ifndef GOOGLE_PROTOBUF_COMPILER_CPP_MESSAGE_LAYOUT_HELPER_H__ 0013 #define GOOGLE_PROTOBUF_COMPILER_CPP_MESSAGE_LAYOUT_HELPER_H__ 0014 0015 #include "google/protobuf/compiler/cpp/options.h" 0016 #include "google/protobuf/descriptor.h" 0017 0018 namespace google { 0019 namespace protobuf { 0020 namespace compiler { 0021 namespace cpp { 0022 0023 class MessageSCCAnalyzer; 0024 0025 // Provides an abstract interface to optimize message layout 0026 // by rearranging the fields of a message. 0027 class MessageLayoutHelper { 0028 public: 0029 virtual ~MessageLayoutHelper() {} 0030 0031 virtual void OptimizeLayout(std::vector<const FieldDescriptor*>* fields, 0032 const Options& options, 0033 MessageSCCAnalyzer* scc_analyzer) = 0; 0034 }; 0035 0036 } // namespace cpp 0037 } // namespace compiler 0038 } // namespace protobuf 0039 } // namespace google 0040 0041 #endif // GOOGLE_PROTOBUF_COMPILER_CPP_MESSAGE_LAYOUT_HELPER_H__
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |