%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
// Copyright 2019 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @abstract extern class TemplateInfo extends Struct { tag: Smi; serial_number: Smi; number_of_properties: Smi; property_list: TemplateList|Undefined; property_accessors: TemplateList|Undefined; } @generatePrint extern class FunctionTemplateRareData extends Struct { // See DECL_RARE_ACCESSORS in FunctionTemplateInfo. prototype_template: ObjectTemplateInfo|Undefined; prototype_provider_template: FunctionTemplateInfo|Undefined; parent_template: FunctionTemplateInfo|Undefined; named_property_handler: InterceptorInfo|Undefined; indexed_property_handler: InterceptorInfo|Undefined; instance_template: ObjectTemplateInfo|Undefined; instance_call_handler: CallHandlerInfo|Undefined; access_check_info: AccessCheckInfo|Undefined; c_function_overloads: FixedArray; } bitfield struct FunctionTemplateInfoFlags extends uint31 { undetectable: bool: 1 bit; needs_access_check: bool: 1 bit; read_only_prototype: bool: 1 bit; remove_prototype: bool: 1 bit; accept_any_receiver: bool: 1 bit; published: bool: 1 bit; // Allowed receiver ranges are used for instance type checking to check // whether the receiver calling the associated JSFunction is a compatible // receiver. allowed_receiver_range_start: int32: 12 bit; allowed_receiver_range_end: int32: 12 bit; } extern class FunctionTemplateInfo extends TemplateInfo { // Handler invoked when calling an instance of this FunctionTemplateInfo. // Either CallHandlerInfo or Undefined. @cppAcquireLoad @cppReleaseStore call_code: CallHandlerInfo|Undefined; class_name: String|Undefined; // If the signature is a FunctionTemplateInfo it is used to check whether the // receiver calling the associated JSFunction is a compatible receiver, i.e. // it is an instance of the signature FunctionTemplateInfo or any of the // receiver's prototypes are. signature: FunctionTemplateInfo|Undefined; // If any of the setters declared by DECL_RARE_ACCESSORS are used then a // FunctionTemplateRareData will be stored here. Until then this contains // undefined. @cppAcquireLoad @cppReleaseStore rare_data: FunctionTemplateRareData|Undefined; shared_function_info: SharedFunctionInfo|Undefined; // Internal field to store a flag bitfield. flag: SmiTagged<FunctionTemplateInfoFlags>; // "length" property of the final JSFunction. length: Smi; // Either the_hole or a private symbol. Used to cache the result on // the receiver under the the cached_property_name when this // FunctionTemplateInfo is used as a getter. cached_property_name: Object; // This will be set as the instance type of the objects that are created from // this FunctionTemplateInfo. instance_type: Smi; } bitfield struct ObjectTemplateInfoFlags extends uint31 { is_immutable_prototype: bool: 1 bit; is_code_kind: bool: 1 bit; embedder_field_count: int32: 28 bit; } extern class ObjectTemplateInfo extends TemplateInfo { constructor: FunctionTemplateInfo|Undefined; data: SmiTagged<ObjectTemplateInfoFlags>; }