/** * @packageDocumentation * @module std.internal */ import { IContainer } from "../../../base/container/IContainer"; import { ILinearContainerBase } from "./ILinearContainerBase"; import { Container } from "../../../base/container/Container"; import { IForwardIterator } from "../../../iterator/IForwardIterator"; import { ReverseIterator } from "../../iterator/ReverseIterator"; import { ListIterator } from "../../iterator/ListIterator"; /** * Basic List Container. * * @author Jeongho Nam - https://github.com/samchon */ export declare abstract class ListContainer, IteratorT extends ListIterator, ReverseIteratorT extends ReverseIterator> extends Container implements ILinearContainerBase { private size_; protected begin_: IteratorT; protected end_: IteratorT; /** * Default Constructor. */ protected constructor(); protected abstract _Create_iterator(prev: IteratorT, next: IteratorT, val?: T): IteratorT; /** * @inheritDoc */ assign(n: number, val: T): void; /** * @inheritDoc */ assign>>(first: InputIterator, last: InputIterator): void; /** * @inheritDoc */ clear(): void; /** * @inheritDoc */ resize(n: number): void; /** * @inheritDoc */ begin(): IteratorT; /** * @inheritDoc */ end(): IteratorT; /** * @inheritDoc */ size(): number; /** * @inheritDoc */ push_front(val: T): void; /** * @inheritDoc */ push_back(val: T): void; /** * @inheritDoc */ pop_front(): void; /** * @inheritDoc */ pop_back(): void; /** * @inheritDoc */ push(...items: T[]): number; /** * @inheritDoc */ insert(position: IteratorT, val: T): IteratorT; /** * @inheritDoc */ insert(position: IteratorT, size: number, val: T): IteratorT; /** * @inheritDoc */ insert>>(position: IteratorT, begin: InputIterator, end: InputIterator): IteratorT; private _Insert_by_repeating_val; protected _Insert_by_range>>(position: IteratorT, begin: InputIterator, end: InputIterator): IteratorT; /** * @inheritDoc */ erase(position: IteratorT): IteratorT; /** * @inheritDoc */ erase(first: IteratorT, last: IteratorT): IteratorT; protected _Erase_by_range(first: IteratorT, last: IteratorT): IteratorT; /** * @inheritDoc */ swap(obj: SourceT): void; } //# sourceMappingURL=ListContainer.d.ts.map