LCOV - code coverage report
Current view: top level - dom/base - nsAttrValueOrString.cpp (source / functions) Hit Total Coverage
Test: output.info Lines: 3 13 23.1 %
Date: 2017-07-14 16:53:18 Functions: 1 1 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
       2             : /* vim: set ts=8 sts=2 et sw=2 tw=80: */
       3             : /* This Source Code Form is subject to the terms of the Mozilla Public
       4             :  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
       5             :  * You can obtain one at http://mozilla.org/MPL/2.0/. */
       6             : 
       7             : #include "nsAttrValueOrString.h"
       8             : 
       9             : const nsAString&
      10         116 : nsAttrValueOrString::String() const
      11             : {
      12         116 :   if (mStringPtr) {
      13         116 :     return *mStringPtr;
      14             :   }
      15             : 
      16           0 :   if (!mAttrValue) {
      17           0 :     mStringPtr = &mCheapString;
      18           0 :     return *mStringPtr;
      19             :   }
      20             : 
      21           0 :   if (mAttrValue->Type() == nsAttrValue::eString) {
      22           0 :     mCheapString = mAttrValue->GetStringValue();
      23           0 :     mStringPtr = &mCheapString;
      24           0 :     return *mStringPtr;
      25             :   }
      26             : 
      27           0 :   mAttrValue->ToString(mCheapString);
      28           0 :   mStringPtr = &mCheapString;
      29           0 :   return *mStringPtr;
      30             : }

Generated by: LCOV version 1.13