feat(List)

This commit is contained in:
2025-04-08 21:08:25 +03:00
commit 56be57ada1
12 changed files with 1942 additions and 0 deletions

35
src/iterators/Forward.js Normal file
View File

@ -0,0 +1,35 @@
import { satisfiesConcept } from "../utils/concept"
export class ForwardIterator {
move(rhs) {
return this.copy(rhs)
}
get value() {
return this.deref().value
}
set value(value) {
return this.deref().value = value
}
neq(rhs) {
return !this.eq(rhs)
}
}
ForwardIterator.is = function (obj, ...args) {
const pure_virtual = [
'clone',
'copy',
'deref',
'inc',
'eq'
]
const virtual = [
'move',
'value',
'neq',
]
return satisfiesConcept(obj, pure_virtual, virtual, ...args)
}