123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- "use strict";
- var protobuf = module.exports = require("./index-minimal");
- protobuf.build = "light";
- /**
- * A node-style callback as used by {@link load} and {@link Root#load}.
- * @typedef LoadCallback
- * @type {function}
- * @param {Error|null} error Error, if any, otherwise `null`
- * @param {Root} [root] Root, if there hasn't been an error
- * @returns {undefined}
- */
- /**
- * Loads one or multiple .proto or preprocessed .json files into a common root namespace and calls the callback.
- * @param {string|string[]} filename One or multiple files to load
- * @param {Root} root Root namespace, defaults to create a new one if omitted.
- * @param {LoadCallback} callback Callback function
- * @returns {undefined}
- * @see {@link Root#load}
- */
- function load(filename, root, callback) {
- if (typeof root === "function") {
- callback = root;
- root = new protobuf.Root();
- } else if (!root)
- root = new protobuf.Root();
- return root.load(filename, callback);
- }
- /**
- * Loads one or multiple .proto or preprocessed .json files into a common root namespace and calls the callback.
- * @name load
- * @function
- * @param {string|string[]} filename One or multiple files to load
- * @param {LoadCallback} callback Callback function
- * @returns {undefined}
- * @see {@link Root#load}
- * @variation 2
- */
- // function load(filename:string, callback:LoadCallback):undefined
- /**
- * Loads one or multiple .proto or preprocessed .json files into a common root namespace and returns a promise.
- * @name load
- * @function
- * @param {string|string[]} filename One or multiple files to load
- * @param {Root} [root] Root namespace, defaults to create a new one if omitted.
- * @returns {Promise<Root>} Promise
- * @see {@link Root#load}
- * @variation 3
- */
- // function load(filename:string, [root:Root]):Promise<Root>
- protobuf.load = load;
- /**
- * Synchronously loads one or multiple .proto or preprocessed .json files into a common root namespace (node only).
- * @param {string|string[]} filename One or multiple files to load
- * @param {Root} [root] Root namespace, defaults to create a new one if omitted.
- * @returns {Root} Root namespace
- * @throws {Error} If synchronous fetching is not supported (i.e. in browsers) or if a file's syntax is invalid
- * @see {@link Root#loadSync}
- */
- function loadSync(filename, root) {
- if (!root)
- root = new protobuf.Root();
- return root.loadSync(filename);
- }
- protobuf.loadSync = loadSync;
- // Serialization
- protobuf.encoder = require("./encoder");
- protobuf.decoder = require("./decoder");
- protobuf.verifier = require("./verifier");
- protobuf.converter = require("./converter");
- // Reflection
- protobuf.ReflectionObject = require("./object");
- protobuf.Namespace = require("./namespace");
- protobuf.Root = require("./root");
- protobuf.Enum = require("./enum");
- protobuf.Type = require("./type");
- protobuf.Field = require("./field");
- protobuf.OneOf = require("./oneof");
- protobuf.MapField = require("./mapfield");
- protobuf.Service = require("./service");
- protobuf.Method = require("./method");
- // Runtime
- protobuf.Message = require("./message");
- protobuf.wrappers = require("./wrappers");
- // Utility
- protobuf.types = require("./types");
- protobuf.util = require("./util");
- // Set up possibly cyclic reflection dependencies
- protobuf.ReflectionObject._configure(protobuf.Root);
- protobuf.Namespace._configure(protobuf.Type, protobuf.Service, protobuf.Enum);
- protobuf.Root._configure(protobuf.Type);
- protobuf.Field._configure(protobuf.Type);
|