소스 검색

Improved GC and added a GC pass to the shell

master
Ludovic 'Archivist' Lagouardette 5 년 전
부모
커밋
776ee87caa
3개의 변경된 파일22개의 추가작업 그리고 0개의 파일을 삭제
  1. +1
    -0
      .gitignore
  2. +20
    -0
      crank.h
  3. +1
    -0
      main.cpp

+ 1
- 0
.gitignore 파일 보기

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

+ 20
- 0
crank.h 파일 보기

@ -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 파일 보기

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

불러오는 중...
취소
저장