guardia-messenger/node_modules/es-abstract/2025/GetViewByteLength.js
DESKTOP-TKLFCPRython f29f525c77 refactor: 101.79.17.164 → zioinfo.co.kr 전체 도메인 변환 + Manager UI 배포
- 37개 파일 IP → zioinfo.co.kr 치환 (소스/매뉴얼/설정/하네스)
- Manager DrConsole/NetworkConsole/CsapConsole 빌드 + /var/www/manager/ 배포
- 테스트: Manager HTTP 200, ITSM 신규 API 7개 전체 200

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-31 10:09:17 +09:00

48 lines
1.5 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

'use strict';
var $TypeError = require('es-errors/type');
var IsFixedLengthArrayBuffer = require('./IsFixedLengthArrayBuffer');
var IsViewOutOfBounds = require('./IsViewOutOfBounds');
var isDataViewWithBufferWitnessRecord = require('../helpers/records/data-view-with-buffer-witness-record');
var dataViewBuffer = require('data-view-buffer');
var dataViewByteLength = require('data-view-byte-length');
var dataViewByteOffset = require('data-view-byte-offset');
// https://262.ecma-international.org/15.0/#sec-getviewbytelength
module.exports = function GetViewByteLength(viewRecord) {
if (!isDataViewWithBufferWitnessRecord(viewRecord)) {
throw new $TypeError('Assertion failed: `viewRecord` must be a DataView with Buffer Witness Record');
}
if (IsViewOutOfBounds(viewRecord)) {
throw new $TypeError('Assertion failed: `viewRecord` is out of bounds'); // step 1
}
var view = viewRecord['[[Object]]']; // step 2
var isFixed = IsFixedLengthArrayBuffer(dataViewBuffer(view));
var viewByteLength = isFixed ? dataViewByteLength(view) : 'AUTO'; // view.[[ByteLength]]
if (viewByteLength !== 'AUTO') {
return viewByteLength; // step 3
}
if (isFixed) {
throw new $TypeError('Assertion failed: DataViews ArrayBuffer is not fixed length'); // step 4
}
var byteOffset = dataViewByteOffset(view); // step 5
var byteLength = viewRecord['[[CachedBufferByteLength]]']; // step 6
if (byteLength === 'DETACHED') {
throw new $TypeError('Assertion failed: DataViews ArrayBuffer is detached'); // step 7
}
return byteLength - byteOffset; // step 8
};