Name Description Size Coverage
JSActor.cpp 18630 88 %
JSActor.h 6104 100 %
JSActorManager.cpp 8870 86 %
JSActorManager.h Get or create an actor by its name. Will set an error on |aRv| if the actor fails to be constructed. 2905 -
JSActorProtocolUtils.h 3048 86 %
JSActorService.cpp static 12009 99 %
JSActorService.h Base class for both `JSWindowActorProtocol` and `JSProcessActorProtocol` which can be used by generic code. 3524 100 %
JSActorTypeUtils.cpp 952 100 %
JSActorTypeUtils.h 1064 -
JSIPCValue.ipdlh JSIPCValue is used to serialize JS values for IPC, similar to structured cloning. Some major differences from structured cloning are: 1. It is a tightly controlled subset, to prevent weird values from being sent that may behave in unexpected ways that could lead to security problems. 2. It is defined like an algebraic data type rather than a lower-level serialization format, which makes it easier to do type checking on. 3. JSIPCValue is not used for any web APIs, so it does not need to be compatible with any standard. JSIPCValue supports falling back to structured cloning for some or all of the JS value for compatibility. This fallback can potentially involve the quirky JSON fallback behavior implemented by nsFrameMessageManager::GetParamsForMessage. Some specific differences with structured cloning: 1. Cyclic data structures can't be serialized. 2. DAGs won't be preserved. 2. Non-indexed properties on Arrays will be dropped. 3. Any holes in an Array will be filled with undefined. Like with structured clone, non-standard prototypes on things like Arrays and Sets will be replaced with the standard ones. If a property on an object being serialized is a getter, then serialization will evaluate the getter, and the resulting object will have a plain data property where the value is whatever the evaluation result was. There are no guarantees about what will happen if anything being serialized is mutated by the getter. 3155 -
JSIPCValueUtils.cpp Conversion from JS values to JSIPCValues. 26052 80 %
JSIPCValueUtils.h 2731 100 %
JSProcessActorChild.cpp 2733 87 %
JSProcessActorChild.h 1871 100 %
JSProcessActorParent.cpp aSendTyped= 2822 88 %
JSProcessActorParent.h 2062 100 %
JSProcessActorProtocol.cpp static 4713 99 %
JSProcessActorProtocol.h Object corresponding to a single process actor protocol This object also can act as a carrier for methods and other state related to a single protocol managed by the JSActorService. 2202 100 %
JSWindowActorChild.cpp 3979 94 %
JSWindowActorChild.h 2325 100 %
JSWindowActorParent.cpp aSendTyped= 2955 89 %
JSWindowActorParent.h 1915 100 %
JSWindowActorProtocol.cpp static 12730 94 %
JSWindowActorProtocol.h Object corresponding to a single window actor protocol. This object acts as an Event listener for the actor which is called for events which would trigger actor creation. This object also can act as a carrier for methods and other state related to a single protocol managed by the JSActorService. 3118 100 %
moz.build 1185 -
nsQueryActor.h 3306 100 %