| 1070 | } |
| 1071 | |
| 1072 | Site* copy(Context* c, Site* s) |
| 1073 | { |
| 1074 | Site* start = 0; |
| 1075 | Site* end = 0; |
| 1076 | for (; s; s = s->next) { |
| 1077 | Site* n = s->copy(c); |
| 1078 | if (end) { |
| 1079 | end->next = n; |
| 1080 | } else { |
| 1081 | start = n; |
| 1082 | } |
| 1083 | end = n; |
| 1084 | } |
| 1085 | return start; |
| 1086 | } |
| 1087 | |
| 1088 | class Snapshot { |
| 1089 | public: |