Files
NapCatQQ/.pnpm-store/v3/files/20/97ae8a4a956398ea2a74619c3c2e8cbf90058c58d3eedd7d11ca2f49560c142ef16c1ab0c3848f5e77a8103e755268aeed9c6f7fb40b7a582fa0f13797358e
T
TanTan e311ca3275
Build NapCat Artifacts / Type Check & Test (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

34 lines
1.1 KiB
Plaintext

import { LongType, ScalarType } from "./reflection-info";
import { reflectionLongConvert } from "./reflection-long-convert";
import { PbLong, PbULong } from "./pb-long";
/**
* Creates the default value for a scalar type.
*/
export function reflectionScalarDefault(type, longType = LongType.STRING) {
switch (type) {
case ScalarType.BOOL:
return false;
case ScalarType.UINT64:
case ScalarType.FIXED64:
return reflectionLongConvert(PbULong.ZERO, longType);
case ScalarType.INT64:
case ScalarType.SFIXED64:
case ScalarType.SINT64:
return reflectionLongConvert(PbLong.ZERO, longType);
case ScalarType.DOUBLE:
case ScalarType.FLOAT:
return 0.0;
case ScalarType.BYTES:
return new Uint8Array(0);
case ScalarType.STRING:
return "";
default:
// case ScalarType.INT32:
// case ScalarType.UINT32:
// case ScalarType.SINT32:
// case ScalarType.FIXED32:
// case ScalarType.SFIXED32:
return 0;
}
}