Skip to content

Latest commit

 

History

History
80 lines (62 loc) · 2.52 KB

new_to_necko_resources.rst

File metadata and controls

80 lines (62 loc) · 2.52 KB

New-to-Necko Resources - An Aggregation

This doc serves as a hub for resources/technologies a new-to-necko developer should get familiar with.

Code Generation and IPC

  • IPC (Inter-Process Communication) and IPDL (Inter-Thread and Inter-Process Message Passing)
  • IDL (Interface Description Language)
    • Implementing an interface (C++/JS)
    • XPCONNECT (scriptable/builtin)
    • QueryInterface (QI) - do_QueryInterface/do_QueryObject
    • do_GetService, do_CreateInstance
  • WebIDL

Necko interfaces

  • nsISupports <xpcom/base/nsISupports.idl>
  • nsIRequest <netwerk/base/nsIRequest.idl> -> nsIChannel <netwerk/base/nsIChannel.idl> -> nsIHttpChannel <netwerk/protocol/http/nsIHttpChannel.idl>
  • nsIRequestObserver <netwerk/base/nsIRequestObserver.idl> (onStart/onStopRequest)
  • nsIStreamListener <netwerk/base/nsIStreamListener.idl> (onDataAvailable)
  • nsIInputStream <xpcom/io/nsIInputStream.idl>/ nsIOutputStream <xpcom/io/nsIOutputStream.idl>

Libraries

Preferences

  • all.js <modules/libpref/init/all.js>
  • firefox.js <browser/app/profile/firefox.js>
  • StaticPrefList.yaml <modules/libpref/init/StaticPrefList.yaml>

Debugging

Testing

See also

  • E10S (Electrolysis) -> Split HttpChannel into: HttpChannelChild & HttpChannelParent
  • Fission -> Site isolation