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

Side by Side Diff: src/factory.h

Issue 10105026: Version 3.10.3 (Closed) Base URL: http://v8.googlecode.com/svn/trunk/
Patch Set: Created 8 years, 8 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 | « src/contexts.h ('k') | src/factory.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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 // not make sense to have a UTF-8 factory function for external strings, 155 // not make sense to have a UTF-8 factory function for external strings,
156 // because we cannot change the underlying buffer. 156 // because we cannot change the underlying buffer.
157 Handle<String> NewExternalStringFromAscii( 157 Handle<String> NewExternalStringFromAscii(
158 const ExternalAsciiString::Resource* resource); 158 const ExternalAsciiString::Resource* resource);
159 Handle<String> NewExternalStringFromTwoByte( 159 Handle<String> NewExternalStringFromTwoByte(
160 const ExternalTwoByteString::Resource* resource); 160 const ExternalTwoByteString::Resource* resource);
161 161
162 // Create a global (but otherwise uninitialized) context. 162 // Create a global (but otherwise uninitialized) context.
163 Handle<Context> NewGlobalContext(); 163 Handle<Context> NewGlobalContext();
164 164
165 // Create a module context.
166 Handle<Context> NewModuleContext(Handle<Context> previous,
167 Handle<ScopeInfo> scope_info);
168
165 // Create a function context. 169 // Create a function context.
166 Handle<Context> NewFunctionContext(int length, 170 Handle<Context> NewFunctionContext(int length, Handle<JSFunction> function);
167 Handle<JSFunction> function);
168 171
169 // Create a catch context. 172 // Create a catch context.
170 Handle<Context> NewCatchContext(Handle<JSFunction> function, 173 Handle<Context> NewCatchContext(Handle<JSFunction> function,
171 Handle<Context> previous, 174 Handle<Context> previous,
172 Handle<String> name, 175 Handle<String> name,
173 Handle<Object> thrown_object); 176 Handle<Object> thrown_object);
174 177
175 // Create a 'with' context. 178 // Create a 'with' context.
176 Handle<Context> NewWithContext(Handle<JSFunction> function, 179 Handle<Context> NewWithContext(Handle<JSFunction> function,
177 Handle<Context> previous, 180 Handle<Context> previous,
178 Handle<JSObject> extension); 181 Handle<JSObject> extension);
179 182
180 // Create a 'block' context. 183 // Create a block context.
181 Handle<Context> NewBlockContext(Handle<JSFunction> function, 184 Handle<Context> NewBlockContext(Handle<JSFunction> function,
182 Handle<Context> previous, 185 Handle<Context> previous,
183 Handle<ScopeInfo> scope_info); 186 Handle<ScopeInfo> scope_info);
184 187
185 // Return the Symbol matching the passed in string. 188 // Return the Symbol matching the passed in string.
186 Handle<String> SymbolFromString(Handle<String> value); 189 Handle<String> SymbolFromString(Handle<String> value);
187 190
188 // Allocate a new struct. The struct is pretenured (allocated directly in 191 // Allocate a new struct. The struct is pretenured (allocated directly in
189 // the old generation). 192 // the old generation).
190 Handle<Struct> NewStruct(InstanceType type); 193 Handle<Struct> NewStruct(InstanceType type);
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 Handle<JSObject> NewJSObject(Handle<JSFunction> constructor, 258 Handle<JSObject> NewJSObject(Handle<JSFunction> constructor,
256 PretenureFlag pretenure = NOT_TENURED); 259 PretenureFlag pretenure = NOT_TENURED);
257 260
258 // Global objects are pretenured. 261 // Global objects are pretenured.
259 Handle<GlobalObject> NewGlobalObject(Handle<JSFunction> constructor); 262 Handle<GlobalObject> NewGlobalObject(Handle<JSFunction> constructor);
260 263
261 // JS objects are pretenured when allocated by the bootstrapper and 264 // JS objects are pretenured when allocated by the bootstrapper and
262 // runtime. 265 // runtime.
263 Handle<JSObject> NewJSObjectFromMap(Handle<Map> map); 266 Handle<JSObject> NewJSObjectFromMap(Handle<Map> map);
264 267
268 // JS modules are pretenured.
269 Handle<JSModule> NewJSModule();
270
265 // JS arrays are pretenured when allocated by the parser. 271 // JS arrays are pretenured when allocated by the parser.
266 Handle<JSArray> NewJSArray(int capacity, 272 Handle<JSArray> NewJSArray(int capacity,
267 ElementsKind elements_kind = FAST_ELEMENTS, 273 ElementsKind elements_kind = FAST_ELEMENTS,
268 PretenureFlag pretenure = NOT_TENURED); 274 PretenureFlag pretenure = NOT_TENURED);
269 275
270 Handle<JSArray> NewJSArrayWithElements( 276 Handle<JSArray> NewJSArrayWithElements(
271 Handle<FixedArrayBase> elements, 277 Handle<FixedArrayBase> elements,
272 ElementsKind elements_kind = FAST_ELEMENTS, 278 ElementsKind elements_kind = FAST_ELEMENTS,
273 PretenureFlag pretenure = NOT_TENURED); 279 PretenureFlag pretenure = NOT_TENURED);
274 280
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
503 // Update the map cache in the global context with (keys, map) 509 // Update the map cache in the global context with (keys, map)
504 Handle<MapCache> AddToMapCache(Handle<Context> context, 510 Handle<MapCache> AddToMapCache(Handle<Context> context,
505 Handle<FixedArray> keys, 511 Handle<FixedArray> keys,
506 Handle<Map> map); 512 Handle<Map> map);
507 }; 513 };
508 514
509 515
510 } } // namespace v8::internal 516 } } // namespace v8::internal
511 517
512 #endif // V8_FACTORY_H_ 518 #endif // V8_FACTORY_H_
OLDNEW
« no previous file with comments | « src/contexts.h ('k') | src/factory.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698