Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(116)

Side by Side Diff: src/parsing/token.cc

Issue 2240513003: Scanner::LiteralBuffer usage cleanup. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Feedback fix compiler issues. Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/parsing/token.h ('k') | test/cctest/test-parsing.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. 1 // Copyright 2006-2008 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <stdint.h> 5 #include <stdint.h>
6 6
7 #include "src/parsing/token.h" 7 #include "src/parsing/token.h"
8 8
9 namespace v8 { 9 namespace v8 {
10 namespace internal { 10 namespace internal {
11 11
12 #define T(name, string, precedence) #name, 12 #define T(name, string, precedence) #name,
13 const char* const Token::name_[NUM_TOKENS] = { 13 const char* const Token::name_[NUM_TOKENS] = {
14 TOKEN_LIST(T, T) 14 TOKEN_LIST(T, T)
15 }; 15 };
16 #undef T 16 #undef T
17 17
18 18
19 #define T(name, string, precedence) string, 19 #define T(name, string, precedence) string,
20 const char* const Token::string_[NUM_TOKENS] = { 20 const char* const Token::string_[NUM_TOKENS] = {
21 TOKEN_LIST(T, T) 21 TOKEN_LIST(T, T)
22 }; 22 };
23 #undef T 23 #undef T
24 24
25 #if !V8_CC_MSVC
26 // TODO(vogelheim): Remove #if once MSVC supports constexpr on functions.
27 constexpr
28 #endif
29 uint8_t length(const char* str) {
30 return str ? static_cast<uint8_t>(strlen(str)) : 0;
31 }
32 #define T(name, string, precedence) length(string),
33 const uint8_t Token::string_length_[NUM_TOKENS] = {TOKEN_LIST(T, T)};
34 #undef T
25 35
26 #define T(name, string, precedence) precedence, 36 #define T(name, string, precedence) precedence,
27 const int8_t Token::precedence_[NUM_TOKENS] = { 37 const int8_t Token::precedence_[NUM_TOKENS] = {
28 TOKEN_LIST(T, T) 38 TOKEN_LIST(T, T)
29 }; 39 };
30 #undef T 40 #undef T
31 41
32 42
33 #define KT(a, b, c) 'T', 43 #define KT(a, b, c) 'T',
34 #define KK(a, b, c) 'K', 44 #define KK(a, b, c) 'K',
35 const char Token::token_type[] = { 45 const char Token::token_type[] = {
36 TOKEN_LIST(KT, KK) 46 TOKEN_LIST(KT, KK)
37 }; 47 };
38 #undef KT 48 #undef KT
39 #undef KK 49 #undef KK
40 50
41 } // namespace internal 51 } // namespace internal
42 } // namespace v8 52 } // namespace v8
OLDNEW
« no previous file with comments | « src/parsing/token.h ('k') | test/cctest/test-parsing.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698