19f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson/*---------------------------------------------------------------------------* 29f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * ptypes.c * 39f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * * 49f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * Copyright 2007, 2008 Nuance Communciations, Inc. * 59f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * * 69f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * Licensed under the Apache License, Version 2.0 (the 'License'); * 79f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * you may not use this file except in compliance with the License. * 89f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * * 99f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * You may obtain a copy of the License at * 109f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * http://www.apache.org/licenses/LICENSE-2.0 * 119f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * * 129f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * Unless required by applicable law or agreed to in writing, software * 139f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * distributed under the License is distributed on an 'AS IS' BASIS, * 149f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * 159f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * See the License for the specific language governing permissions and * 169f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * limitations under the License. * 179f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson * * 189f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson *---------------------------------------------------------------------------*/ 199f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson 209f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#include "ptypes.h" 219f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson 229f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse WilsonPINLINE ESR_BOOL isNumber(const LCHAR* str) 239f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson{ 249f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson if (!str || !*str) 259f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson return ESR_FALSE; 269f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson 279f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson /* ignore minus sign */ 289f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson if (*str == L('-')) 299f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson ++str; 309f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson 319f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson while (*str) 329f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson { 339f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson if (!isdigit(*str)) 349f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson return ESR_FALSE; 359f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson ++str; 369f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson } 379f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson return ESR_TRUE; 38} 39