28 lines
434 B
JavaScript
28 lines
434 B
JavaScript
import { satisfiesConcept } from "../utils/concept"
|
|
|
|
export class ForwardIterator {
|
|
move(rhs) {
|
|
return this.copy(rhs)
|
|
}
|
|
|
|
neq(rhs) {
|
|
return !this.eq(rhs)
|
|
}
|
|
}
|
|
|
|
ForwardIterator.is = function (obj, ...args) {
|
|
const pure_virtual = [
|
|
'clone',
|
|
'copy',
|
|
'value',
|
|
'deref',
|
|
'inc',
|
|
'eq',
|
|
]
|
|
const virtual = [
|
|
'move',
|
|
'neq',
|
|
]
|
|
return satisfiesConcept(obj, pure_virtual, virtual, ...args)
|
|
}
|