// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. // @dart = 2.9 part of utilslib; /** * General purpose string manipulation utilities. */ class StringUtils { /** * Returns either [str], or if [str] is null, the value of [defaultStr]. */ static String defaultString(String str, [String defaultStr = '']) { return str == null ? defaultStr : str; } /** Parse string to a double, and handle null intelligently */ static double parseDouble(String str, [double ifNull = null]) { return (str == null) ? ifNull : double.parse(str); } /** Parse string to a int, and handle null intelligently */ static int parseInt(String str, [int ifNull = null]) { return (str == null) ? ifNull : int.parse(str); } /** Parse bool to a double, and handle null intelligently */ // TODO(jacobr): corelib should have a boolean parsing method static bool parseBool(String str, [bool ifNull = null]) { assert(str == null || str == 'true' || str == 'false'); return (str == null) ? ifNull : (str == 'true'); } }