[presubmit] Enable readability/namespace linter checking.
[platform/upstream/v8.git] / src / preparse-data-format.h
1 // Copyright 2011 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef V8_PREPARSE_DATA_FORMAT_H_
6 #define V8_PREPARSE_DATA_FORMAT_H_
7
8 namespace v8 {
9 namespace internal {
10
11 // Generic and general data used by preparse data recorders and readers.
12
13 struct PreparseDataConstants {
14  public:
15   // Layout and constants of the preparse data exchange format.
16   static const unsigned kMagicNumber = 0xBadDead;
17   static const unsigned kCurrentVersion = 11;
18
19   static const int kMagicOffset = 0;
20   static const int kVersionOffset = 1;
21   static const int kHasErrorOffset = 2;
22   static const int kFunctionsSizeOffset = 3;
23   static const int kSizeOffset = 4;
24   static const int kHeaderSize = 5;
25
26   // If encoding a message, the following positions are fixed.
27   static const int kMessageStartPos = 0;
28   static const int kMessageEndPos = 1;
29   static const int kMessageArgCountPos = 2;
30   static const int kParseErrorTypePos = 3;
31   static const int kMessageTemplatePos = 4;
32   static const int kMessageArgPos = 5;
33
34   static const unsigned char kNumberTerminator = 0x80u;
35 };
36
37
38 }  // namespace internal
39 }  // namespace v8.
40
41 #endif  // V8_PREPARSE_DATA_FORMAT_H_