daniel@transgaming.com | 91ed149 | 2010-10-29 03:11:43 +0000 | [diff] [blame] | 1 | // |
| 2 | // Copyright (c) 2010 The ANGLE Project Authors. All rights reserved. |
| 3 | // Use of this source code is governed by a BSD-style license that can be |
| 4 | // found in the LICENSE file. |
| 5 | // |
| 6 | |
Geoff Lang | dcefb75 | 2013-12-04 15:54:27 -0500 | [diff] [blame] | 7 | #include "compiler/translator/util.h" |
daniel@transgaming.com | 91ed149 | 2010-10-29 03:11:43 +0000 | [diff] [blame] | 8 | |
Zhenyao Mo | 521c836 | 2013-08-29 15:17:04 -0700 | [diff] [blame] | 9 | #include <limits> |
| 10 | |
Zhenyao Mo | f382bff | 2013-09-09 13:20:27 -0700 | [diff] [blame] | 11 | #include "compiler/preprocessor/numeric_lex.h" |
daniel@transgaming.com | 91ed149 | 2010-10-29 03:11:43 +0000 | [diff] [blame] | 12 | |
Zhenyao Mo | 521c836 | 2013-08-29 15:17:04 -0700 | [diff] [blame] | 13 | bool atof_clamp(const char *str, float *value) |
daniel@transgaming.com | 91ed149 | 2010-10-29 03:11:43 +0000 | [diff] [blame] | 14 | { |
Zhenyao Mo | f382bff | 2013-09-09 13:20:27 -0700 | [diff] [blame] | 15 | bool success = pp::numeric_lex_float(str, value); |
Zhenyao Mo | 521c836 | 2013-08-29 15:17:04 -0700 | [diff] [blame] | 16 | if (!success) |
| 17 | *value = std::numeric_limits<float>::max(); |
| 18 | return success; |
daniel@transgaming.com | 91ed149 | 2010-10-29 03:11:43 +0000 | [diff] [blame] | 19 | } |
Zhenyao Mo | 521c836 | 2013-08-29 15:17:04 -0700 | [diff] [blame] | 20 | |
| 21 | bool atoi_clamp(const char *str, int *value) |
| 22 | { |
Zhenyao Mo | f382bff | 2013-09-09 13:20:27 -0700 | [diff] [blame] | 23 | bool success = pp::numeric_lex_int(str, value); |
| 24 | if (!success) |
Zhenyao Mo | 521c836 | 2013-08-29 15:17:04 -0700 | [diff] [blame] | 25 | *value = std::numeric_limits<int>::max(); |
Zhenyao Mo | f382bff | 2013-09-09 13:20:27 -0700 | [diff] [blame] | 26 | return success; |
Zhenyao Mo | 521c836 | 2013-08-29 15:17:04 -0700 | [diff] [blame] | 27 | } |
| 28 | |