Throw when calling abstract methods; fix abstract return types
This commit is contained in:
+14
-6
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
* @module ol/renderer/Map
|
||||
*/
|
||||
import {getUid} from '../util.js';
|
||||
import {abstract, getUid} from '../util.js';
|
||||
import Disposable from '../Disposable.js';
|
||||
import {listen, unlistenByKey} from '../events.js';
|
||||
import EventType from '../events/EventType.js';
|
||||
@@ -11,7 +11,9 @@ import {visibleAtResolution} from '../layer/Layer.js';
|
||||
import {shared as iconImageCache} from '../style/IconImageCache.js';
|
||||
import {compose as composeTransform, invert as invertTransform, setFromArray as transformSetFromArray} from '../transform.js';
|
||||
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
*/
|
||||
class MapRenderer extends Disposable {
|
||||
|
||||
/**
|
||||
@@ -51,7 +53,9 @@ class MapRenderer extends Disposable {
|
||||
* @param {import("../render/EventType.js").default} type Event type.
|
||||
* @param {import("../PluggableMap.js").FrameState} frameState Frame state.
|
||||
*/
|
||||
dispatchRenderEvent(type, frameState) {}
|
||||
dispatchRenderEvent(type, frameState) {
|
||||
abstract();
|
||||
}
|
||||
|
||||
/**
|
||||
* Register layer renderer constructors.
|
||||
@@ -179,7 +183,9 @@ class MapRenderer extends Disposable {
|
||||
* @return {T|undefined} Callback result.
|
||||
* @template S,T,U
|
||||
*/
|
||||
forEachLayerAtPixel(pixel, frameState, hitTolerance, callback, thisArg, layerFilter, thisArg2) {}
|
||||
forEachLayerAtPixel(pixel, frameState, hitTolerance, callback, thisArg, layerFilter, thisArg2) {
|
||||
return abstract();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {import("../coordinate.js").Coordinate} coordinate Coordinate.
|
||||
@@ -290,11 +296,13 @@ class MapRenderer extends Disposable {
|
||||
}
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
* Render.
|
||||
* @abstract
|
||||
* @param {?import("../PluggableMap.js").FrameState} frameState Frame state.
|
||||
*/
|
||||
renderFrame(frameState) {}
|
||||
renderFrame(frameState) {
|
||||
abstract();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {import("../PluggableMap.js").FrameState} frameState Frame state.
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
/**
|
||||
* @module ol/renderer/canvas/IntermediateCanvas
|
||||
*/
|
||||
import {abstract} from '../../util.js';
|
||||
import {scale as scaleCoordinate} from '../../coordinate.js';
|
||||
import {createCanvasContext2D} from '../../dom.js';
|
||||
import {containsExtent, intersects} from '../../extent.js';
|
||||
import CanvasLayerRenderer from '../canvas/Layer.js';
|
||||
import {create as createTransform, apply as applyTransform} from '../../transform.js';
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
*/
|
||||
class IntermediateCanvasRenderer extends CanvasLayerRenderer {
|
||||
|
||||
/**
|
||||
@@ -80,13 +84,17 @@ class IntermediateCanvasRenderer extends CanvasLayerRenderer {
|
||||
* @abstract
|
||||
* @return {HTMLCanvasElement|HTMLVideoElement|HTMLImageElement} Canvas.
|
||||
*/
|
||||
getImage() {}
|
||||
getImage() {
|
||||
return abstract();
|
||||
}
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
* @return {!import("../../transform.js").Transform} Image transform.
|
||||
*/
|
||||
getImageTransform() {}
|
||||
getImageTransform() {
|
||||
return abstract();
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/**
|
||||
* @module ol/renderer/canvas/Layer
|
||||
*/
|
||||
import {abstract} from '../../util.js';
|
||||
import {getBottomLeft, getBottomRight, getTopLeft, getTopRight} from '../../extent.js';
|
||||
import {TRUE} from '../../functions.js';
|
||||
import RenderEvent from '../../render/Event.js';
|
||||
@@ -10,6 +11,9 @@ import CanvasImmediateRenderer from '../../render/canvas/Immediate.js';
|
||||
import LayerRenderer from '../Layer.js';
|
||||
import {create as createTransform, apply as applyTransform, compose as composeTransform} from '../../transform.js';
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
*/
|
||||
class CanvasLayerRenderer extends LayerRenderer {
|
||||
|
||||
/**
|
||||
@@ -167,7 +171,9 @@ class CanvasLayerRenderer extends LayerRenderer {
|
||||
* @param {import("../../layer/Layer.js").State} layerState Layer state.
|
||||
* @param {CanvasRenderingContext2D} context Context.
|
||||
*/
|
||||
composeFrame(frameState, layerState, context) {}
|
||||
composeFrame(frameState, layerState, context) {
|
||||
abstract();
|
||||
}
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
@@ -175,7 +181,9 @@ class CanvasLayerRenderer extends LayerRenderer {
|
||||
* @param {import("../../layer/Layer.js").State} layerState Layer state.
|
||||
* @return {boolean} whether composeFrame should be called.
|
||||
*/
|
||||
prepareFrame(frameState, layerState) {}
|
||||
prepareFrame(frameState, layerState) {
|
||||
return abstract();
|
||||
}
|
||||
}
|
||||
|
||||
export default CanvasLayerRenderer;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/**
|
||||
* @module ol/renderer/webgl/Layer
|
||||
*/
|
||||
import {abstract} from '../../util.js';
|
||||
import RenderEvent from '../../render/Event.js';
|
||||
import RenderEventType from '../../render/EventType.js';
|
||||
import WebGLImmediateRenderer from '../../render/webgl/Immediate.js';
|
||||
@@ -14,6 +15,9 @@ import {ARRAY_BUFFER, FRAMEBUFFER, FLOAT, TEXTURE_2D,
|
||||
import WebGLBuffer from '../../webgl/Buffer.js';
|
||||
import {createEmptyTexture} from '../../webgl/Context.js';
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
*/
|
||||
class WebGLLayerRenderer extends LayerRenderer {
|
||||
|
||||
/**
|
||||
@@ -236,7 +240,9 @@ class WebGLLayerRenderer extends LayerRenderer {
|
||||
* @param {import("../../webgl/Context.js").default} context Context.
|
||||
* @return {boolean} whether composeFrame should be called.
|
||||
*/
|
||||
prepareFrame(frameState, layerState, context) {}
|
||||
prepareFrame(frameState, layerState, context) {
|
||||
return abstract();
|
||||
}
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
@@ -248,7 +254,9 @@ class WebGLLayerRenderer extends LayerRenderer {
|
||||
* @return {T|undefined} Callback result.
|
||||
* @template S,T,U
|
||||
*/
|
||||
forEachLayerAtPixel(pixel, frameState, callback, thisArg) {}
|
||||
forEachLayerAtPixel(pixel, frameState, callback, thisArg) {
|
||||
return abstract();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user