
    8Sj              
           S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  S SK
Jr  S SK
Jr  S S	KJr  S S
KJr  S SKJr  S SKJr  S\S\S\	S\SS4
S jrS\S\	S\S\SS4
S jrg)    )TextIO)overload_resolution)define_the_regular_attributes)define_the_constants)GenerationContext)"fully_qualified_name_for_interface)idl_identifier_cpp_name)#implementation_header_for_interface)GeneratedIncludes)define_the_regular_operations)write_regular_operations)	Interfaceoutincludescontext	interfacereturnNc                    UR                  S5        UR                  S5        U R                  SUR                   SUR                   SUR                   SUR                   SUR                   S35        S	UR                  ;   a  U R                  S
5        SUR                  ;   a  U R                  S5        [        R
                  " U5      R                  5        Hg  nUS   nU R                  S[        U5       S35        [        U5      S:  d  M7  [        U5       H!  u  pgU R                  S[        XvS9 S35        M#     Mi     U R                  S5        g )NzLibJS/Runtime/NativeFunction.hzLibJS/Runtime/Object.hzclass z+ final : public JS::Object {
    JS_OBJECT(z(, JS::Object);
    GC_DECLARE_ALLOCATOR(z);

public:
    explicit zM(JS::Realm&);
    virtual void initialize(JS::Realm&) override;
    virtual ~z() override;

private:
WithGCVisitorz;    virtual void visit_edges(JS::Cell::Visitor&) override;
WithFinalizerzn
public:
    static constexpr bool OVERRIDES_FINALIZE = true;

private:
    virtual void finalize() override;
r   z    JS_DECLARE_NATIVE_FUNCTION(z);
   )suffixz};

)
addwritenamespace_classextended_attributesr   operation_overload_setsvaluesr	   len	enumerate)r   r   r   r   
operations	operationoverload_indexoverloaded_operations           X/mnt/mint/home/seanl/public/Repos/ladybird/Meta/Generators/libweb_bindings/namespaces.pywrite_namespace_declarationr&      sb    LL12LL)*II9,,- .(() *#334 5 ''( )''( )
	 )777		PQ)777			
 *AA)LSSU
qM			34KI4V3WW[\]z?Q8A*8M4		56MNb6z5{{  A 9N	 V II	    c                    UR                  S5        UR                  S5        UR                  UR                  5        UR                  [        U5      5        U R	                  SUR
                   SUR
                   SUR
                   SUR
                   SUR
                   SUR
                   S	UR                   S
35        [        XU5        [        XU5        [        XX#5        SUR                  ;   a0  U R	                  S[        U5      R                  S5      S    S35        U R	                  S5        [        XX#5        SUR                  ;   a=  U R	                  SUR
                   S[        U5      R                  S5      S    S35        SUR                  ;   a>  U R	                  SUR
                   S[        U5      R                  S5      S    S35        g g )NzLibJS/Runtime/ValueInlines.hzLibWeb/WebIDL/Tracing.hzGC_DEFINE_ALLOCATOR(z);

z::zl(JS::Realm& realm)
    : Object(ConstructWithPrototypeTag::Tag, realm.intrinsics().object_prototype())
{
}

z::~z()
{
}

void u  ::initialize(JS::Realm& realm)
{
    auto& object = *this;
    [[maybe_unused]] auto& vm = this->vm();
    [[maybe_unused]] u8 default_attributes = JS::Attribute::Writable | JS::Attribute::Enumerable | JS::Attribute::Configurable;

    Base::initialize(realm);

    // The class string of a namespace object is the namespace’s identifier.
    define_direct_property(vm.well_known_symbol_to_string_tag(), JS::PrimitiveString::create(vm, "z("_utf16), JS::Attribute::Configurable);
WithInitializerz
    r   z::initialize(*this, realm);
z}

r   zvoid zP::visit_edges(JS::Cell::Visitor& visitor)
{
    Base::visit_edges(visitor);
    z"::visit_edges(*this, visitor);
}

r   z)::finalize()
{
    Base::finalize();
    z::finalize(*this);
}

)r   add_bindingimplemented_namer
   r   r   namer   r   r   r   r   	partitionr   )r   r   r   r   s       r%   write_namespace_implementationr.   D   s    LL/0LL*+334LL4Y?@ II !:!: ; <
 2i778 9
  3y889 :   	!c dmcqcqbr s)	4 "#; "#; x; I999		'	2<<TB1EF G	

 II	
 S8?)777		i//0 1 (	2<<TB1EF G	
 )777		i//0 1 (	2<<TB1EF G	
 8r'   )typingr   Generators.libweb_bindingsr   %Generators.libweb_bindings.attributesr   $Generators.libweb_bindings.constantsr   "Generators.libweb_bindings.contextr   $Generators.libweb_bindings.cpp_typesr   r	   r
   #Generators.libweb_bindings.includesr   %Generators.libweb_bindings.operationsr   r   Utils.webidl_parserr   r&   r.    r'   r%   <module>r9      s     : O E @ S H T A O J )+	+,+7H+U^+	+^R
	R
+R
7HR
U^R
	R
r'   