base,os: Coding-style unification

Fixes #1432
This commit is contained in:
Norman Feske
2015-03-04 21:12:14 +01:00
committed by Christian Helmuth
parent 56ed7addbc
commit e8336acafc
227 changed files with 19073 additions and 18833 deletions

View File

@ -18,60 +18,64 @@
#include <util/string.h>
namespace Genode {
class Avl_string_base : public Avl_node<Avl_string_base>
{
private:
const char *_str;
protected:
Avl_string_base(const char *str) : _str(str) { }
public:
const char *name() const { return _str; }
/************************
** Avl node interface **
************************/
bool higher(Avl_string_base *c) { return (strcmp(c->_str, _str) > 0); }
/**
* Find by name
*/
Avl_string_base *find_by_name(const char *name)
{
if (strcmp(name, _str) == 0) return this;
Avl_string_base *c = Avl_node<Avl_string_base>::child(strcmp(name, _str) > 0);
return c ? c->find_by_name(name) : 0;
}
};
/*
* The template pumps up the Avl_string_base object and
* provides the buffer for the actual string.
*/
template <int STR_LEN>
class Avl_string : public Avl_string_base
{
private:
char _str_buf[STR_LEN];
public:
Avl_string(const char *str) : Avl_string_base(_str_buf)
{
strncpy(_str_buf, str, sizeof(_str_buf));
_str_buf[STR_LEN - 1] = 0;
}
};
class Avl_string_base;
template <int> class Avl_string;
}
class Genode::Avl_string_base : public Avl_node<Avl_string_base>
{
private:
const char *_str;
protected:
Avl_string_base(const char *str) : _str(str) { }
public:
const char *name() const { return _str; }
/************************
** Avl node interface **
************************/
bool higher(Avl_string_base *c) { return (strcmp(c->_str, _str) > 0); }
/**
* Find by name
*/
Avl_string_base *find_by_name(const char *name)
{
if (strcmp(name, _str) == 0) return this;
Avl_string_base *c = Avl_node<Avl_string_base>::child(strcmp(name, _str) > 0);
return c ? c->find_by_name(name) : 0;
}
};
/*
* The template pumps up the Avl_string_base object and provides the buffer for
* the actual string.
*/
template <int STR_LEN>
class Genode::Avl_string : public Avl_string_base
{
private:
char _str_buf[STR_LEN];
public:
Avl_string(const char *str) : Avl_string_base(_str_buf)
{
strncpy(_str_buf, str, sizeof(_str_buf));
_str_buf[STR_LEN - 1] = 0;
}
};
#endif /* _INCLUDE__UTIL__AVL_STRING_H_ */