-
Botond Baranyi authored
Change-Id: I6b9396893c7a4b4ad01800748b6cb79851f79bde Signed-off-by:
Botond Baranyi <botond.baranyi@ericsson.com>
Botond Baranyi authoredChange-Id: I6b9396893c7a4b4ad01800748b6cb79851f79bde Signed-off-by:
Botond Baranyi <botond.baranyi@ericsson.com>
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
PredefFunc.cc 34.91 KiB
/******************************************************************************
* Copyright (c) 2000-2016 Ericsson Telecom AB
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Baji, Laszlo
* Balasko, Jeno
* Baranyi, Botond
* Kovacs, Ferenc
* Raduly, Csaba
* Zalanyi, Balazs Andor
*
******************************************************************************/
#include "PredefFunc.hh"
#include "error.h"
#include "Int.hh"
#include "Real.hh"
#include "Setting.hh"
#include "string.hh"
#include "ustring.hh"
#include "CompilerError.hh"
#include <stdio.h>
#include <sys/types.h>
#include <regex.h>
#include <stdint.h>
#include "../common/memory.h"
#include "../common/pattern.hh"
#include "../common/UnicharPattern.hh"
#include <iostream>
// used by regex
#define ERRMSG_BUFSIZE 512
namespace Common {
static const char utf32be[] = {'0','0','0','0','F','E','F','F',0};
static const char utf32le[] = {'F','F','F','E','0','0','0','0',0};
static const char utf16be[] = {'F','E','F','F',0};
static const char utf16le[] = {'F','F','F','E',0};
static const char utf8[] = {'E','F','B','B','B','F',0};
static inline unsigned char get_bit_value(char c, unsigned char bit_value)
{
switch (c) {
case '0':
return 0;
case '1':
return bit_value;
default:
FATAL_ERROR("Invalid binary digit (%c) in bitstring value", c);
return 0;
}
}
char toupper (const char c)
{
if (('A' <= c && 'F' >= c) ||
('0' <= c && '9' >= c)) return c;
switch (c)
{
case 'a' : return 'A';
case 'b' : return 'B';
case 'c' : return 'C';
case 'd' : return 'D';
case 'e' : return 'E';
case 'f' : return 'F';
default: