本文整理汇总了TypeScript中neuroglancer/util/json.parseArray函数的典型用法代码示例。如果您正苦于以下问题:TypeScript parseArray函数的具体用法?TypeScript parseArray怎么用?TypeScript parseArray使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了parseArray函数的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: parseOwnerInfo
function parseOwnerInfo(obj: any): OwnerInfo {
let stackObjs = parseArray(obj, verifyObject);
if (stackObjs.length < 1) {
throw new Error(`No stacks found for owner object.`);
}
let projects = new Map<string, ProjectInfo>();
// Get the owner from the first stack
let owner = verifyObjectProperty(stackObjs[0], 'stackId', parseStackOwner);
for (let stackObj of stackObjs) {
let stackName = verifyObjectProperty(stackObj, 'stackId', parseStackName);
let stackInfo = parseStackInfo(stackObj);
if (stackInfo !== undefined) {
let projectName = stackInfo.project;
let projectInfo = projects.get(projectName);
if (projectInfo === undefined) {
let stacks = new Map<string, StackInfo>();
projects.set(projectName, {stacks});
projectInfo = projects.get(projectName);
}
projectInfo!.stacks.set(stackName, stackInfo);
}
}
return {owner, projects};
}
示例2: constructor
constructor (response: any) {
if (typeof response !== 'object' || Array.isArray(response)) {
throw new Error('Failed to parse volume metadata.');
}
this.resolution = parseFiniteVec(vec3.create(), response['resolution']);
this.voxelOffset = parseIntVec(vec3.create(), response['voxel_offset']);
this.size = parseIntVec(vec3.create(), response['size']);
this.chunkSizes = parseArray(response['chunk_sizes'], x => parseFiniteVec(vec3.create(), x));
if (this.chunkSizes.length === 0) {
throw new Error('No chunk sizes specified.');
}
let encodingStr = response['encoding'];
let encoding = serverChunkEncodings.get(encodingStr);
if (encoding === undefined) {
throw new Error(`Invalid chunk encoding: ${JSON.stringify(encodingStr)}`);
}
this.encoding = encoding;
if (encoding === VolumeChunkEncoding.COMPRESSED_SEGMENTATION) {
this.compressedSegmentationBlockSize = parseIntVec(vec3.create(), response['compressed_segmentation_block_size']);
}
this.key = response['key'];
if (typeof this.key !== 'string') {
throw new Error('No key specified.');
}
}
示例3: verifyObjectProperty
this.scales = verifyObjectProperty(obj, 'scales', x => parseArray(x, y => new ScaleInfo(y)));
示例4: parseArray
x => parseArray(x, y => parseFixedLengthArray(vec3.create(), y, verifyPositiveInt)));
示例5: parseArray
scalesObj => parseArray(
scalesObj,
scaleObj => parseFixedLengthArray(vec3.create(), scaleObj, verifyFinitePositiveFloat)));
示例6: parseArray
.then(value => parseArray(value, verifyString));