Quellcode durchsuchen

Improved GC and added a GC pass to the shell

master
Ludovic 'Archivist' Lagouardette vor 6 Jahren
Ursprung
Commit
776ee87caa
3 geänderte Dateien mit 22 neuen und 0 gelöschten Zeilen
  1. +1
    -0
      .gitignore
  2. +20
    -0
      crank.h
  3. +1
    -0
      main.cpp

+ 1
- 0
.gitignore Datei anzeigen

@ -0,0 +1 @@
a.out

+ 20
- 0
crank.h Datei anzeigen

@ -289,6 +289,26 @@ public:
void collect()
{
auto elems = &elements;
while(elems->ptr)
{
auto elems_after = &(elems->ptr->next);
while(elems_after->ptr)
{
if(
elems->ptr->data.first == elems_after->ptr->data.first
)
{
*elems_after = std::move(elems_after->ptr->next);
}
else
{
elems_after = &(elems_after->ptr->next);
}
}
elems = &(elems->ptr->next);
}
auto cps = &copies;
while(cps->ptr)
{

+ 1
- 0
main.cpp Datei anzeigen

@ -30,6 +30,7 @@ int main()
for(auto c : ret)
std::cout<<c;
std::cout<<std::endl<<"> ";
ctx.collect();
}
}

Laden…
Abbrechen
Speichern