Skip to content
Snippets Groups Projects
Commit 6b5c9cc7 authored by Roberto Raggi's avatar Roberto Raggi
Browse files

Cleanup

parent c4877cf6
No related branches found
No related tags found
No related merge requests found
......@@ -97,7 +97,7 @@ Macro *Environment::bind(const Macro &__macro)
else
_allocated_macros <<= 1;
_macros = (Macro **) realloc(_macros, sizeof(Macro *) * _allocated_macros);
_macros = reinterpret_cast<Macro **>(realloc(_macros, sizeof(Macro *) * _allocated_macros));
}
_macros[_macro_count] = m;
......@@ -147,7 +147,7 @@ void Environment::reset()
_hash_count = 401;
}
bool Environment::isBuiltinMacro(const QByteArray &s) const
bool Environment::isBuiltinMacro(const QByteArray &s)
{
if (s.length() != 8)
return false;
......@@ -211,6 +211,12 @@ bool Environment::isBuiltinMacro(const QByteArray &s) const
return false;
}
Environment::iterator Environment::firstMacro() const
{ return _macros; }
Environment::iterator Environment::lastMacro() const
{ return _macros + _macro_count + 1; }
Macro *Environment::resolve(const QByteArray &name) const
{
if (! _macros)
......@@ -244,10 +250,10 @@ void Environment::rehash()
_hash_count <<= 1;
}
_hash = (Macro **) calloc(_hash_count, sizeof(Macro *));
_hash = reinterpret_cast<Macro **>(calloc(_hash_count, sizeof(Macro *)));
for (Macro **it = firstMacro(); it != lastMacro(); ++it) {
Macro *m= *it;
for (iterator it = firstMacro(); it != lastMacro(); ++it) {
Macro *m = *it;
const unsigned h = m->_hashcode % _hash_count;
m->_next = _hash[h];
_hash[h] = m;
......
......@@ -61,6 +61,9 @@ class Macro;
class CPLUSPLUS_EXPORT Environment
{
public:
typedef Macro **iterator;
public:
Environment();
~Environment();
......@@ -72,23 +75,15 @@ public:
Macro *remove(const QByteArray &name);
Macro *resolve(const QByteArray &name) const;
bool isBuiltinMacro(const QByteArray &name) const;
const Macro *const *firstMacro() const
{ return _macros; }
Macro **firstMacro()
{ return _macros; }
const Macro *const *lastMacro() const
{ return _macros + _macro_count + 1; }
Macro **lastMacro()
{ return _macros + _macro_count + 1; }
iterator firstMacro() const;
iterator lastMacro() const;
void reset();
void addMacros(const QList<Macro> &macros);
static bool isBuiltinMacro(const QByteArray &name);
private:
static unsigned hashCode(const QByteArray &s);
void rehash();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment