42 lines
1.8 KiB
JavaScript
42 lines
1.8 KiB
JavaScript
"use strict";
|
|
// Copyright 2021-2024 Buf Technologies, Inc.
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.makeProtoRuntime = void 0;
|
|
const enum_js_1 = require("./enum.js");
|
|
const message_type_js_1 = require("./message-type.js");
|
|
const extensions_js_1 = require("./extensions.js");
|
|
const json_format_js_1 = require("./json-format.js");
|
|
const binary_format_js_1 = require("./binary-format.js");
|
|
const util_common_js_1 = require("./util-common.js");
|
|
function makeProtoRuntime(syntax, newFieldList, initFields) {
|
|
return {
|
|
syntax,
|
|
json: (0, json_format_js_1.makeJsonFormat)(),
|
|
bin: (0, binary_format_js_1.makeBinaryFormat)(),
|
|
util: Object.assign(Object.assign({}, (0, util_common_js_1.makeUtilCommon)()), { newFieldList,
|
|
initFields }),
|
|
makeMessageType(typeName, fields, opt) {
|
|
return (0, message_type_js_1.makeMessageType)(this, typeName, fields, opt);
|
|
},
|
|
makeEnum: enum_js_1.makeEnum,
|
|
makeEnumType: enum_js_1.makeEnumType,
|
|
getEnumType: enum_js_1.getEnumType,
|
|
makeExtension(typeName, extendee, field) {
|
|
return (0, extensions_js_1.makeExtension)(this, typeName, extendee, field);
|
|
},
|
|
};
|
|
}
|
|
exports.makeProtoRuntime = makeProtoRuntime;
|