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

Side by Side Diff: trunk/Source/bindings/core/v8/V8DOMConfiguration.h

Issue 1314133002: Revert 201193 "[bindings] Compact ConstantConfiguration by using..." (Closed) Base URL: svn://svn.chromium.org/blink/
Patch Set: Created 5 years, 3 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | trunk/Source/bindings/templates/constants.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 ConstantTypeDouble, 118 ConstantTypeDouble,
119 ConstantTypeString 119 ConstantTypeString
120 }; 120 };
121 121
122 // ConstantConfiguration translates into calls to Set() for setting up an 122 // ConstantConfiguration translates into calls to Set() for setting up an
123 // object's constants. It sets the constant on both the FunctionTemplate and 123 // object's constants. It sets the constant on both the FunctionTemplate and
124 // the ObjectTemplate. PropertyAttributes is always ReadOnly. 124 // the ObjectTemplate. PropertyAttributes is always ReadOnly.
125 struct ConstantConfiguration { 125 struct ConstantConfiguration {
126 ConstantConfiguration& operator=(const ConstantConfiguration&) = delete; 126 ConstantConfiguration& operator=(const ConstantConfiguration&) = delete;
127 DISALLOW_ALLOCATION(); 127 DISALLOW_ALLOCATION();
128 ConstantConfiguration(const char* const name, unsigned value, ConstantTy pe type)
129 : name(name)
130 , ivalue(value)
131 , type(type) {}
132 ConstantConfiguration(const char* const name, int value, ConstantType ty pe)
133 : name(name)
134 , ivalue(value)
135 , type(type) {}
136 ConstantConfiguration(const char* const name, double value, ConstantType type)
137 : name(name)
138 , dvalue(value)
139 , type(type) {}
140 ConstantConfiguration(const char* const name, const char* const value, C onstantType type)
141 : name(name)
142 , svalue(value)
143 , type(type) {}
144 const char* const name; 128 const char* const name;
145 union { 129 int ivalue;
146 int ivalue; 130 double dvalue;
147 double dvalue; 131 const char* const svalue;
148 const char* const svalue;
149 };
150 ConstantType type; 132 ConstantType type;
151 }; 133 };
152 134
153 // Constant installation 135 // Constant installation
154 // 136 //
155 // installConstants and installConstant are used for simple constants. They 137 // installConstants and installConstant are used for simple constants. They
156 // install constants using v8::Template::Set(), which results in a property 138 // install constants using v8::Template::Set(), which results in a property
157 // that is much faster to access from scripts. 139 // that is much faster to access from scripts.
158 // installConstantWithGetter is used when some C++ code needs to be executed 140 // installConstantWithGetter is used when some C++ code needs to be executed
159 // when the constant is accessed, e.g. to handle deprecation or measuring 141 // when the constant is accessed, e.g. to handle deprecation or measuring
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
211 const AttributeConfiguration*, size_t attributeCount, 193 const AttributeConfiguration*, size_t attributeCount,
212 const AccessorConfiguration*, size_t accessorCount, 194 const AccessorConfiguration*, size_t accessorCount,
213 const MethodConfiguration*, size_t callbackCount); 195 const MethodConfiguration*, size_t callbackCount);
214 196
215 static v8::Local<v8::FunctionTemplate> domClassTemplate(v8::Isolate*, Wrappe rTypeInfo*, void (*)(v8::Local<v8::FunctionTemplate>, v8::Isolate*)); 197 static v8::Local<v8::FunctionTemplate> domClassTemplate(v8::Isolate*, Wrappe rTypeInfo*, void (*)(v8::Local<v8::FunctionTemplate>, v8::Isolate*));
216 }; 198 };
217 199
218 } // namespace blink 200 } // namespace blink
219 201
220 #endif // V8DOMConfiguration_h 202 #endif // V8DOMConfiguration_h
OLDNEW
« no previous file with comments | « no previous file | trunk/Source/bindings/templates/constants.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698