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