1/* 2 * Copyright 2013 Google Inc. 3 * 4 * Use of this source code is governed by a BSD-style license that can be 5 * found in the LICENSE file. 6 */ 7 8#include "SkString.h" 9#include "SkStringUtils.h" 10 11void SkAddFlagToString(SkString* string, bool flag, const char* flagStr, bool* needSeparator) { 12 if (flag) { 13 if (*needSeparator) { 14 string->append("|"); 15 } 16 string->append(flagStr); 17 *needSeparator = true; 18 } 19} 20 21void SkAppendScalar(SkString* str, SkScalar value, SkScalarAsStringType asType) { 22 switch (asType) { 23 case kHex_SkScalarAsStringType: 24 str->appendf("SkBits2Float(0x%08x)", SkFloat2Bits(value)); 25 break; 26 case kDec_SkScalarAsStringType: { 27 SkString tmp; 28 tmp.printf("%g", value); 29 if (tmp.contains('.')) { 30 tmp.appendUnichar('f'); 31 } 32 str->append(tmp); 33 break; 34 } 35 } 36} 37 38