<?xml version="1.0" encoding="UTF-8"?>
<coverage generated="1789586674">
  <project timestamp="1789586674">
    <file name="/src/src/Abbrev.php">
      <class name="Wikimedia\JsonCodec\Abbrev" namespace="global">
        <metrics complexity="4" methods="3" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="3" coveredstatements="0" elements="6" coveredelements="0"/>
      </class>
      <line num="40" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="53" type="stmt" count="0"/>
      <line num="58" type="method" name="isSameAs" visibility="public" complexity="2" crap="6" count="0"/>
      <line num="59" type="stmt" count="0"/>
      <line num="62" type="method" name="__toString" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="63" type="stmt" count="0"/>
      <metrics loc="66" ncloc="24" classes="1" methods="3" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="3" coveredstatements="0" elements="6" coveredelements="0"/>
    </file>
    <file name="/src/src/CodecService.php">
      <class name="Wikimedia\JsonCodec\CodecService" namespace="global">
        <metrics complexity="1" methods="1" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="1" coveredstatements="0" elements="2" coveredelements="0"/>
      </class>
      <line num="38" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="42" type="stmt" count="0"/>
      <metrics loc="44" ncloc="17" classes="1" methods="1" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="1" coveredstatements="0" elements="2" coveredelements="0"/>
    </file>
    <file name="/src/src/Hint.php">
      <class name="Wikimedia\JsonCodec\Hint" namespace="global">
        <metrics complexity="15" methods="6" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="20" coveredstatements="11" elements="26" coveredelements="14"/>
      </class>
      <line num="39" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="44" type="stmt" count="0"/>
      <line num="61" type="method" name="build" visibility="public" complexity="2" crap="2" count="2"/>
      <line num="62" type="stmt" count="2"/>
      <line num="63" type="stmt" count="2"/>
      <line num="65" type="stmt" count="1"/>
      <line num="66" type="stmt" count="1"/>
      <line num="76" type="method" name="hasModifier" visibility="public" complexity="2" crap="2" count="4"/>
      <line num="77" type="stmt" count="4"/>
      <line num="78" type="stmt" count="2"/>
      <line num="80" type="stmt" count="3"/>
      <line num="83" type="method" name="instanceHasModifier" visibility="private" complexity="4" crap="20" count="0"/>
      <line num="84" type="stmt" count="0"/>
      <line num="85" type="stmt" count="0"/>
      <line num="87" type="stmt" count="0"/>
      <line num="88" type="stmt" count="0"/>
      <line num="89" type="stmt" count="0"/>
      <line num="91" type="stmt" count="0"/>
      <line num="100" type="method" name="isSame" visibility="public" complexity="5" crap="5" count="4"/>
      <line num="101" type="stmt" count="4"/>
      <line num="102" type="stmt" count="4"/>
      <line num="104" type="stmt" count="3"/>
      <line num="105" type="stmt" count="3"/>
      <line num="108" type="method" name="__toString" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="109" type="stmt" count="0"/>
      <line num="110" type="stmt" count="0"/>
      <metrics loc="113" ncloc="64" classes="1" methods="6" coveredmethods="3" conditionals="0" coveredconditionals="0" statements="20" coveredstatements="11" elements="26" coveredelements="14"/>
    </file>
    <file name="/src/src/HintType.php">
      <metrics loc="62" ncloc="16" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonClassCodec.php">
      <metrics loc="65" ncloc="15" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonCodec.php">
      <class name="Wikimedia\JsonCodec\JsonCodec" namespace="global">
        <metrics complexity="91" methods="13" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="207" coveredstatements="22" elements="220" coveredelements="24"/>
      </class>
      <line num="59" type="method" name="__construct" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="60" type="stmt" count="0"/>
      <line num="62" type="stmt" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="69" type="stmt" count="0"/>
      <line num="74" type="stmt" count="0"/>
      <line num="76" type="stmt" count="0"/>
      <line num="77" type="stmt" count="0"/>
      <line num="78" type="stmt" count="0"/>
      <line num="79" type="stmt" count="0"/>
      <line num="99" type="method" name="toJsonString" visibility="public" complexity="1" crap="1" count="81"/>
      <line num="100" type="stmt" count="81"/>
      <line num="101" type="stmt" count="81"/>
      <line num="102" type="stmt" count="81"/>
      <line num="103" type="stmt" count="81"/>
      <line num="104" type="stmt" count="81"/>
      <line num="123" type="method" name="newFromJsonString" visibility="public" complexity="1" crap="1" count="87"/>
      <line num="124" type="stmt" count="87"/>
      <line num="125" type="stmt" count="87"/>
      <line num="126" type="stmt" count="87"/>
      <line num="139" type="method" name="codecFor" visibility="protected" complexity="6" crap="42" count="0"/>
      <line num="140" type="stmt" count="0"/>
      <line num="141" type="stmt" count="0"/>
      <line num="142" type="stmt" count="0"/>
      <line num="145" type="stmt" count="0"/>
      <line num="146" type="stmt" count="0"/>
      <line num="147" type="stmt" count="0"/>
      <line num="148" type="stmt" count="0"/>
      <line num="149" type="stmt" count="0"/>
      <line num="150" type="stmt" count="0"/>
      <line num="152" type="stmt" count="0"/>
      <line num="154" type="stmt" count="0"/>
      <line num="155" type="stmt" count="0"/>
      <line num="156" type="stmt" count="0"/>
      <line num="157" type="stmt" count="0"/>
      <line num="158" type="stmt" count="0"/>
      <line num="159" type="stmt" count="0"/>
      <line num="161" type="stmt" count="0"/>
      <line num="172" type="method" name="addCodecFor" visibility="public" complexity="2" crap="2.50" count="11"/>
      <line num="174" type="stmt" count="11"/>
      <line num="176" type="stmt" count="11"/>
      <line num="177" type="stmt" count="0"/>
      <line num="178" type="stmt" count="0"/>
      <line num="179" type="stmt" count="0"/>
      <line num="181" type="stmt" count="11"/>
      <line num="205" type="method" name="addAbbrev" visibility="public" complexity="6" crap="7.58" count="10"/>
      <line num="206" type="stmt" count="10"/>
      <line num="210" type="stmt" count="10"/>
      <line num="211" type="stmt" count="10"/>
      <line num="213" type="stmt" count="10"/>
      <line num="214" type="stmt" count="10"/>
      <line num="216" type="stmt" count="0"/>
      <line num="217" type="stmt" count="0"/>
      <line num="218" type="stmt" count="0"/>
      <line num="220" type="stmt" count="10"/>
      <line num="222" type="stmt" count="10"/>
      <line num="223" type="stmt" count="10"/>
      <line num="224" type="stmt" count="10"/>
      <line num="225" type="stmt" count="0"/>
      <line num="226" type="stmt" count="0"/>
      <line num="227" type="stmt" count="0"/>
      <line num="229" type="stmt" count="10"/>
      <line num="231" type="stmt" count="10"/>
      <line num="237" type="method" name="getAbbrev" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="238" type="stmt" count="0"/>
      <line num="239" type="stmt" count="0"/>
      <line num="264" type="method" name="toJsonArray" visibility="public" complexity="34" crap="1190" count="0"/>
      <line num="265" type="stmt" count="0"/>
      <line num="266" type="stmt" count="0"/>
      <line num="267" type="stmt" count="0"/>
      <line num="270" type="stmt" count="0"/>
      <line num="271" type="stmt" count="0"/>
      <line num="272" type="stmt" count="0"/>
      <line num="273" type="stmt" count="0"/>
      <line num="274" type="stmt" count="0"/>
      <line num="276" type="stmt" count="0"/>
      <line num="277" type="stmt" count="0"/>
      <line num="279" type="stmt" count="0"/>
      <line num="280" type="stmt" count="0"/>
      <line num="281" type="stmt" count="0"/>
      <line num="283" type="stmt" count="0"/>
      <line num="284" type="stmt" count="0"/>
      <line num="285" type="stmt" count="0"/>
      <line num="287" type="stmt" count="0"/>
      <line num="288" type="stmt" count="0"/>
      <line num="289" type="stmt" count="0"/>
      <line num="291" type="stmt" count="0"/>
      <line num="292" type="stmt" count="0"/>
      <line num="293" type="stmt" count="0"/>
      <line num="295" type="stmt" count="0"/>
      <line num="296" type="stmt" count="0"/>
      <line num="297" type="stmt" count="0"/>
      <line num="299" type="stmt" count="0"/>
      <line num="300" type="stmt" count="0"/>
      <line num="302" type="stmt" count="0"/>
      <line num="304" type="stmt" count="0"/>
      <line num="307" type="stmt" count="0"/>
      <line num="308" type="stmt" count="0"/>
      <line num="309" type="stmt" count="0"/>
      <line num="310" type="stmt" count="0"/>
      <line num="311" type="stmt" count="0"/>
      <line num="312" type="stmt" count="0"/>
      <line num="317" type="stmt" count="0"/>
      <line num="318" type="stmt" count="0"/>
      <line num="319" type="stmt" count="0"/>
      <line num="321" type="stmt" count="0"/>
      <line num="323" type="stmt" count="0"/>
      <line num="324" type="stmt" count="0"/>
      <line num="327" type="stmt" count="0"/>
      <line num="329" type="stmt" count="0"/>
      <line num="331" type="stmt" count="0"/>
      <line num="333" type="stmt" count="0"/>
      <line num="334" type="stmt" count="0"/>
      <line num="335" type="stmt" count="0"/>
      <line num="336" type="stmt" count="0"/>
      <line num="337" type="stmt" count="0"/>
      <line num="338" type="stmt" count="0"/>
      <line num="339" type="stmt" count="0"/>
      <line num="341" type="stmt" count="0"/>
      <line num="342" type="stmt" count="0"/>
      <line num="346" type="stmt" count="0"/>
      <line num="352" type="stmt" count="0"/>
      <line num="354" type="stmt" count="0"/>
      <line num="355" type="stmt" count="0"/>
      <line num="356" type="stmt" count="0"/>
      <line num="364" type="stmt" count="0"/>
      <line num="369" type="stmt" count="0"/>
      <line num="370" type="stmt" count="0"/>
      <line num="371" type="stmt" count="0"/>
      <line num="372" type="stmt" count="0"/>
      <line num="376" type="stmt" count="0"/>
      <line num="379" type="stmt" count="0"/>
      <line num="380" type="stmt" count="0"/>
      <line num="381" type="stmt" count="0"/>
      <line num="382" type="stmt" count="0"/>
      <line num="384" type="stmt" count="0"/>
      <line num="404" type="method" name="newFromJsonArray" visibility="public" complexity="18" crap="342" count="0"/>
      <line num="405" type="stmt" count="0"/>
      <line num="407" type="stmt" count="0"/>
      <line num="411" type="stmt" count="0"/>
      <line num="412" type="stmt" count="0"/>
      <line num="413" type="stmt" count="0"/>
      <line num="415" type="stmt" count="0"/>
      <line num="416" type="stmt" count="0"/>
      <line num="417" type="stmt" count="0"/>
      <line num="418" type="stmt" count="0"/>
      <line num="419" type="stmt" count="0"/>
      <line num="420" type="stmt" count="0"/>
      <line num="421" type="stmt" count="0"/>
      <line num="423" type="stmt" count="0"/>
      <line num="429" type="stmt" count="0"/>
      <line num="430" type="stmt" count="0"/>
      <line num="434" type="stmt" count="0"/>
      <line num="436" type="stmt" count="0"/>
      <line num="437" type="stmt" count="0"/>
      <line num="438" type="stmt" count="0"/>
      <line num="439" type="stmt" count="0"/>
      <line num="440" type="stmt" count="0"/>
      <line num="441" type="stmt" count="0"/>
      <line num="442" type="stmt" count="0"/>
      <line num="446" type="stmt" count="0"/>
      <line num="447" type="stmt" count="0"/>
      <line num="448" type="stmt" count="0"/>
      <line num="449" type="stmt" count="0"/>
      <line num="452" type="stmt" count="0"/>
      <line num="453" type="stmt" count="0"/>
      <line num="454" type="stmt" count="0"/>
      <line num="456" type="stmt" count="0"/>
      <line num="459" type="stmt" count="0"/>
      <line num="460" type="stmt" count="0"/>
      <line num="463" type="stmt" count="0"/>
      <line num="465" type="stmt" count="0"/>
      <line num="469" type="stmt" count="0"/>
      <line num="470" type="stmt" count="0"/>
      <line num="472" type="stmt" count="0"/>
      <line num="475" type="stmt" count="0"/>
      <line num="510" type="method" name="isArrayMarked" visibility="protected" complexity="1" crap="2" count="0"/>
      <line num="511" type="stmt" count="0"/>
      <line num="535" type="method" name="markArray" visibility="protected" complexity="6" crap="42" count="0"/>
      <line num="539" type="stmt" count="0"/>
      <line num="540" type="stmt" count="0"/>
      <line num="541" type="stmt" count="0"/>
      <line num="542" type="stmt" count="0"/>
      <line num="543" type="stmt" count="0"/>
      <line num="544" type="stmt" count="0"/>
      <line num="551" type="stmt" count="0"/>
      <line num="554" type="stmt" count="0"/>
      <line num="557" type="stmt" count="0"/>
      <line num="558" type="stmt" count="0"/>
      <line num="559" type="stmt" count="0"/>
      <line num="560" type="stmt" count="0"/>
      <line num="581" type="method" name="unmarkArray" visibility="protected" complexity="7" crap="56" count="0"/>
      <line num="582" type="stmt" count="0"/>
      <line num="585" type="stmt" count="0"/>
      <line num="586" type="stmt" count="0"/>
      <line num="587" type="stmt" count="0"/>
      <line num="589" type="stmt" count="0"/>
      <line num="591" type="stmt" count="0"/>
      <line num="592" type="stmt" count="0"/>
      <line num="593" type="stmt" count="0"/>
      <line num="594" type="stmt" count="0"/>
      <line num="595" type="stmt" count="0"/>
      <line num="596" type="stmt" count="0"/>
      <line num="598" type="stmt" count="0"/>
      <line num="599" type="stmt" count="0"/>
      <line num="600" type="stmt" count="0"/>
      <line num="602" type="stmt" count="0"/>
      <line num="603" type="stmt" count="0"/>
      <line num="604" type="stmt" count="0"/>
      <line num="605" type="stmt" count="0"/>
      <line num="608" type="stmt" count="0"/>
      <line num="610" type="stmt" count="0"/>
      <line num="621" type="method" name="classEquals" visibility="private" complexity="7" crap="56" count="0"/>
      <line num="622" type="stmt" count="0"/>
      <line num="624" type="stmt" count="0"/>
      <line num="626" type="stmt" count="0"/>
      <line num="627" type="stmt" count="0"/>
      <line num="629" type="stmt" count="0"/>
      <line num="631" type="stmt" count="0"/>
      <line num="633" type="stmt" count="0"/>
      <metrics loc="636" ncloc="350" classes="1" methods="13" coveredmethods="2" conditionals="0" coveredconditionals="0" statements="207" coveredstatements="22" elements="220" coveredelements="24"/>
    </file>
    <file name="/src/src/JsonCodecInterface.php">
      <metrics loc="91" ncloc="12" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonCodecable.php">
      <metrics loc="40" ncloc="16" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonCodecableTrait.php">
      <class name="Wikimedia\JsonCodec\JsonCodecableTrait" namespace="global">
        <metrics complexity="2" methods="2" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="2" coveredstatements="0" elements="4" coveredelements="0"/>
      </class>
      <line num="34" type="method" name="jsonClassCodec" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="42" type="stmt" count="0"/>
      <line num="77" type="method" name="jsonClassHintFor" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="78" type="stmt" count="0"/>
      <metrics loc="81" ncloc="26" classes="1" methods="2" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="2" coveredstatements="0" elements="4" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonCodecableWithServicesTestTrait.php">
      <class name="Wikimedia\JsonCodec\JsonCodecableWithServicesTestTrait" namespace="global">
        <metrics complexity="9" methods="2" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="46" coveredstatements="0" elements="48" coveredelements="0"/>
      </class>
      <line num="71" type="method" name="getServiceContainer" visibility="protected" complexity="1" crap="2" count="0"/>
      <line num="72" type="stmt" count="0"/>
      <line num="81" type="method" name="testJsonCodecableWithServicesSignature" visibility="public" complexity="8" crap="72" count="0"/>
      <line num="82" type="stmt" count="0"/>
      <line num="83" type="stmt" count="0"/>
      <line num="84" type="stmt" count="0"/>
      <line num="85" type="stmt" count="0"/>
      <line num="86" type="stmt" count="0"/>
      <line num="88" type="stmt" count="0"/>
      <line num="89" type="stmt" count="0"/>
      <line num="90" type="stmt" count="0"/>
      <line num="92" type="stmt" count="0"/>
      <line num="93" type="stmt" count="0"/>
      <line num="94" type="stmt" count="0"/>
      <line num="95" type="stmt" count="0"/>
      <line num="96" type="stmt" count="0"/>
      <line num="97" type="stmt" count="0"/>
      <line num="98" type="stmt" count="0"/>
      <line num="99" type="stmt" count="0"/>
      <line num="100" type="stmt" count="0"/>
      <line num="101" type="stmt" count="0"/>
      <line num="102" type="stmt" count="0"/>
      <line num="103" type="stmt" count="0"/>
      <line num="104" type="stmt" count="0"/>
      <line num="105" type="stmt" count="0"/>
      <line num="106" type="stmt" count="0"/>
      <line num="108" type="stmt" count="0"/>
      <line num="113" type="stmt" count="0"/>
      <line num="114" type="stmt" count="0"/>
      <line num="116" type="stmt" count="0"/>
      <line num="117" type="stmt" count="0"/>
      <line num="119" type="stmt" count="0"/>
      <line num="121" type="stmt" count="0"/>
      <line num="122" type="stmt" count="0"/>
      <line num="123" type="stmt" count="0"/>
      <line num="124" type="stmt" count="0"/>
      <line num="125" type="stmt" count="0"/>
      <line num="126" type="stmt" count="0"/>
      <line num="127" type="stmt" count="0"/>
      <line num="130" type="stmt" count="0"/>
      <line num="133" type="stmt" count="0"/>
      <line num="134" type="stmt" count="0"/>
      <line num="135" type="stmt" count="0"/>
      <line num="138" type="stmt" count="0"/>
      <line num="139" type="stmt" count="0"/>
      <line num="140" type="stmt" count="0"/>
      <line num="141" type="stmt" count="0"/>
      <line num="142" type="stmt" count="0"/>
      <metrics loc="147" ncloc="78" classes="1" methods="2" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="46" coveredstatements="0" elements="48" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonCodecableWithServicesTrait.php">
      <class name="Wikimedia\JsonCodec\JsonCodecableWithServicesTrait" namespace="global">
        <metrics complexity="2" methods="2" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="4" coveredstatements="0" elements="6" coveredelements="0"/>
      </class>
      <line num="63" type="method" name="jsonClassCodec" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="66" type="stmt" count="0"/>
      <line num="67" type="stmt" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="88" type="method" name="jsonClassHintFor" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="89" type="stmt" count="0"/>
      <metrics loc="92" ncloc="23" classes="1" methods="2" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="4" coveredstatements="0" elements="6" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonEnumClassCodec.php">
      <class name="Wikimedia\JsonCodec\JsonEnumClassCodec" namespace="global">
        <metrics complexity="7" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="12" coveredstatements="0" elements="16" coveredelements="0"/>
      </class>
      <line num="31" type="method" name="toJsonArray" visibility="public" complexity="2" crap="6" count="0"/>
      <line num="33" type="stmt" count="0"/>
      <line num="34" type="stmt" count="0"/>
      <line num="36" type="stmt" count="0"/>
      <line num="45" type="method" name="newFromJsonArray" visibility="public" complexity="2" crap="6" count="0"/>
      <line num="46" type="stmt" count="0"/>
      <line num="47" type="stmt" count="0"/>
      <line num="49" type="stmt" count="0"/>
      <line num="52" type="stmt" count="0"/>
      <line num="62" type="method" name="jsonClassHintFor" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="63" type="stmt" count="0"/>
      <line num="70" type="method" name="getInstance" visibility="public" complexity="2" crap="6" count="0"/>
      <line num="71" type="stmt" count="0"/>
      <line num="72" type="stmt" count="0"/>
      <line num="73" type="stmt" count="0"/>
      <line num="75" type="stmt" count="0"/>
      <metrics loc="78" ncloc="39" classes="1" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="12" coveredstatements="0" elements="16" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonServicesClassCodec.php">
      <class name="Wikimedia\JsonCodec\JsonServicesClassCodec" namespace="global">
        <metrics complexity="13" methods="8" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="33" coveredstatements="6" elements="41" coveredelements="7"/>
      </class>
      <line num="33" type="method" name="__construct" visibility="private" complexity="1" crap="2" count="0"/>
      <line num="37" type="stmt" count="0"/>
      <line num="49" type="method" name="toJsonArray" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="52" type="stmt" count="0"/>
      <line num="62" type="method" name="newFromJsonArray" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="65" type="stmt" count="0"/>
      <line num="83" type="method" name="jsonClassHintFor" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="86" type="stmt" count="0"/>
      <line num="97" type="method" name="newForClass" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="100" type="stmt" count="0"/>
      <line num="101" type="stmt" count="0"/>
      <line num="102" type="stmt" count="0"/>
      <line num="103" type="stmt" count="0"/>
      <line num="104" type="stmt" count="0"/>
      <line num="105" type="stmt" count="0"/>
      <line num="106" type="stmt" count="0"/>
      <line num="107" type="stmt" count="0"/>
      <line num="119" type="method" name="resolveServices" visibility="private" complexity="4" crap="20" count="0"/>
      <line num="123" type="stmt" count="0"/>
      <line num="124" type="stmt" count="0"/>
      <line num="125" type="stmt" count="0"/>
      <line num="126" type="stmt" count="0"/>
      <line num="128" type="stmt" count="0"/>
      <line num="131" type="stmt" count="0"/>
      <line num="148" type="method" name="serviceParams" visibility="public" complexity="2" crap="2" count="2"/>
      <line num="151" type="stmt" count="2"/>
      <line num="152" type="stmt" count="2"/>
      <line num="153" type="stmt" count="2"/>
      <line num="154" type="stmt" count="2"/>
      <line num="155" type="stmt" count="2"/>
      <line num="157" type="stmt" count="2"/>
      <line num="165" type="method" name="serviceName" visibility="private" complexity="2" crap="6" count="0"/>
      <line num="168" type="stmt" count="0"/>
      <line num="169" type="stmt" count="0"/>
      <line num="170" type="stmt" count="0"/>
      <line num="171" type="stmt" count="0"/>
      <line num="173" type="stmt" count="0"/>
      <line num="174" type="stmt" count="0"/>
      <line num="175" type="stmt" count="0"/>
      <line num="176" type="stmt" count="0"/>
      <line num="177" type="stmt" count="0"/>
      <metrics loc="180" ncloc="86" classes="1" methods="8" coveredmethods="1" conditionals="0" coveredconditionals="0" statements="33" coveredstatements="6" elements="41" coveredelements="7"/>
    </file>
    <file name="/src/src/JsonStaticClassCodec.php">
      <class name="Wikimedia\JsonCodec\JsonStaticClassCodec" namespace="global">
        <metrics complexity="5" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="7" coveredstatements="0" elements="11" coveredelements="0"/>
      </class>
      <line num="31" type="method" name="toJsonArray" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="34" type="stmt" count="0"/>
      <line num="44" type="method" name="newFromJsonArray" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="47" type="stmt" count="0"/>
      <line num="65" type="method" name="jsonClassHintFor" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="68" type="stmt" count="0"/>
      <line num="75" type="method" name="getInstance" visibility="public" complexity="2" crap="6" count="0"/>
      <line num="76" type="stmt" count="0"/>
      <line num="77" type="stmt" count="0"/>
      <line num="78" type="stmt" count="0"/>
      <line num="80" type="stmt" count="0"/>
      <metrics loc="83" ncloc="29" classes="1" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="7" coveredstatements="0" elements="11" coveredelements="0"/>
    </file>
    <file name="/src/src/JsonStdClassCodec.php">
      <class name="Wikimedia\JsonCodec\JsonStdClassCodec" namespace="global">
        <metrics complexity="5" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="7" coveredstatements="0" elements="11" coveredelements="0"/>
      </class>
      <line num="30" type="method" name="toJsonArray" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="31" type="stmt" count="0"/>
      <line num="42" type="method" name="newFromJsonArray" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="43" type="stmt" count="0"/>
      <line num="54" type="method" name="jsonClassHintFor" visibility="public" complexity="1" crap="2" count="0"/>
      <line num="55" type="stmt" count="0"/>
      <line num="62" type="method" name="getInstance" visibility="public" complexity="2" crap="6" count="0"/>
      <line num="63" type="stmt" count="0"/>
      <line num="64" type="stmt" count="0"/>
      <line num="65" type="stmt" count="0"/>
      <line num="67" type="stmt" count="0"/>
      <metrics loc="70" ncloc="31" classes="1" methods="4" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="7" coveredstatements="0" elements="11" coveredelements="0"/>
    </file>
    <metrics files="15" loc="1848" ncloc="826" classes="11" methods="49" coveredmethods="6" conditionals="0" coveredconditionals="0" statements="342" coveredstatements="39" elements="391" coveredelements="45"/>
  </project>
</coverage>
