// This Header is auto generated by BDSLiteLoader Toolchain #pragma once #define AUTO_GENERATED #include "../Global.h" #define BEFORE_EXTRA #undef BEFORE_EXTRA class CommandRegistry { #define AFTER_EXTRA #undef AFTER_EXTRA #ifndef DISABLE_CONSTRUCTOR_PREVENTION_COMMANDREGISTRY public: class CommandRegistry& operator=(class CommandRegistry const &) = delete; CommandRegistry(class CommandRegistry const &) = delete; #endif public: #ifdef ENABLE_VIRTUAL_FAKESYMBOL_COMMANDREGISTRY #endif MCAPI CommandRegistry(); MCAPI void addEnumValueConstraints(std::string const &, std::vector const &, enum SemanticConstraint); MCAPI int addEnumValues(std::string const &, std::vector const &); MCAPI int addSoftEnum(std::string const &, std::vector); MCAPI void addSoftEnumValues(std::string const &, std::vector); MCAPI std::vector getAliases(std::string const &) const; MCAPI std::vector getAlphabeticalLookup(class CommandOrigin const &) const; MCAPI std::string getCommandName(std::string const &) const; MCAPI struct CommandSyntaxInformation getCommandOverloadSyntaxInformation(class CommandOrigin const &, std::string const &) const; MCAPI void registerAlias(std::string, std::string); MCAPI void registerCommand(std::string const &, char const *, enum CommandPermissionLevel, struct CommandFlag, struct CommandFlag); MCAPI void removeSoftEnumValues(std::string const &, std::vector); MCAPI class AvailableCommandsPacket serializeAvailableCommands() const; MCAPI void setNetworkUpdateCallback(class std::function); MCAPI void setScoreCallback(class std::function); MCAPI void setSoftEnumValues(std::string const &, std::vector); MCAPI ~CommandRegistry(); MCAPI static char const * COMMAND_NAME_ENUM_NAME; MCAPI static char const * FUNCTION_NAME_SOFTENUM_NAME; MCAPI static char const * TAG_VALUES_SOFTENUM_NAME; //private: MCAPI void _addEnumValueConstraintsInternal(std::vector> const &, enum SemanticConstraint); MCAPI class CommandRegistry::Symbol _addFunctionSoftEnum(); MCAPI class CommandRegistry::Symbol _getConstrainedParamEnumSymbol(class CommandParameterData const &) const; MCAPI bool _matchesEnumConstraintsSet(class CommandRegistry::Symbol const &, class CommandOrigin const &, class CommandRegistry::Symbol const &, enum SemanticConstraint) const; MCAPI class CommandRegistry::Symbol addEnumValuesInternal(std::string const &, std::vector> const &, class typeid_t, bool ( CommandRegistry::*)(void *, struct CommandRegistry::ParseToken const &, class CommandOrigin const &, int, std::string &, std::vector &) const); MCAPI class CommandRegistry::Symbol addEnumValuesInternal(std::string const &, std::vector> const &, class typeid_t, bool ( CommandRegistry::*)(void *, struct CommandRegistry::ParseToken const &, class CommandOrigin const &, int, std::string &, std::vector &) const); MCAPI void addEnumValuesToExisting(unsigned int, std::vector> const &); MCAPI class CommandRegistry::Symbol addPostfix(std::string const &); MCAPI void addRule(class CommandRegistry::Symbol, std::vector &&, class std::function, class CommandVersion); MCAPI void addSemanticConstraint(enum SemanticConstraint); MCAPI class CommandRegistry::Symbol addSoftTerminal(std::string const &); MCAPI void buildFirstSet(struct CommandRegistry::ParseTable &, class CommandRegistry::Symbol, unsigned int) const; MCAPI void buildFollowSet(struct CommandRegistry::ParseTable &, class CommandRegistry::Symbol, unsigned int, class std::set, class std::allocator> &) const; MCAPI class CommandRegistry::Symbol buildOptionalRuleChain(struct CommandRegistry::Signature const &, std::vector const &, std::vector const &); MCAPI class CommandRegistry::Symbol buildOptionalRuleChain(struct CommandRegistry::Signature const &, std::vector const &, class CommandParameterData const *, unsigned __int64); MCAPI void buildParseTable(unsigned int) const; MCAPI class CommandRegistry::Symbol buildRules(struct CommandRegistry::Signature &, std::vector const &, unsigned __int64); MCAPI bool checkOriginCommandFlags(class CommandOrigin const &, struct CommandFlag, enum CommandPermissionLevel) const; MCAPI std::unique_ptr createCommand(struct CommandRegistry::ParseToken const &, class CommandOrigin const &, int, std::string &, std::vector &) const; MCAPI std::string describe(class CommandRegistry::Symbol) const; MCAPI std::string describe(class CommandParameterData const &) const; MCAPI std::string describe(struct CommandRegistry::Signature const &, std::string const &, struct CommandRegistry::Overload const &, unsigned int, unsigned int *, unsigned int *) const; MCAPI struct CommandRegistry::Signature * findCommand(std::string const &); MCAPI struct CommandRegistry::Signature const * findCommand(std::string const &) const; MCAPI class CommandRegistry::Symbol findEnum(std::string const &) const; MCAPI class CommandRegistry::Symbol findEnumValue(std::string const &) const; MCAPI class CommandRegistry::Symbol findIdentifierInfo(std::string const &) const; MCAPI class CommandRegistry::Symbol findPostfix(std::string const &) const; MCAPI class CommandRegistry::Symbol findSoftEnum(std::string const &) const; MCAPI std::vector first(struct CommandRegistry::ParseTable &, std::vector const &) const; MCAPI void forEachNonTerminal(class std::function) const; MCAPI unsigned __int64 getEnumData(struct CommandRegistry::ParseToken const &) const; MCAPI struct InvertableFilter getInvertableFilter(struct CommandRegistry::ParseToken const &) const; MCAPI bool isValid(class CommandRegistry::Symbol) const; MCAPI bool originCanRun(class CommandOrigin const &, struct CommandRegistry::Signature const &) const; MCAPI bool originCanRunOverloadWithParam(class CommandOrigin const &, class CommandParameterData const &) const; MCAPI bool parseOperator(enum CommandOperator *, struct CommandRegistry::ParseToken const &, std::string &, std::vector &) const; MCAPI bool parseSelector(class CommandSelectorBase *, struct CommandRegistry::ParseToken const &, class CommandOrigin const &, int, std::string &, std::vector &, bool) const; MCAPI void registerOverloadInternal(struct CommandRegistry::Signature &, struct CommandRegistry::Overload &); MCAPI void setupOverloadRules(struct CommandRegistry::Signature &, struct CommandRegistry::Overload &); MCAPI std::string symbolToString(class CommandRegistry::Symbol) const; MCAPI static std::string _removeStringQuotes(std::string const &); MCAPI static struct CommandRegistry::ParseToken * collapse(struct CommandRegistry::ParseToken &, class CommandRegistry::Symbol); MCAPI static struct CommandRegistry::ParseToken * collapseOn(struct CommandRegistry::ParseToken &, class CommandRegistry::Symbol, class CommandRegistry::Symbol); MCAPI static struct CommandRegistry::ParseToken * expand(struct CommandRegistry::ParseToken &, class CommandRegistry::Symbol); MCAPI static struct CommandRegistry::ParseToken * expandExcept(struct CommandRegistry::ParseToken &, class CommandRegistry::Symbol, class CommandRegistry::Symbol); MCAPI static struct CommandRegistry::ParseToken * fold(struct CommandRegistry::ParseToken &, class CommandRegistry::Symbol, class CommandRegistry::Symbol); MCAPI static struct CommandRegistry::ParseToken * kill(struct CommandRegistry::ParseToken &, class CommandRegistry::Symbol); MCAPI static bool readFloat(float &, struct CommandRegistry::ParseToken const &, std::string &, std::vector &); MCAPI static bool readInt(int &, struct CommandRegistry::ParseToken const &, std::string &, std::vector &); MCAPI static bool readRelativeCoordinate(bool &, float &, struct CommandRegistry::ParseToken const &, bool, std::string &, std::vector &); private: MCAPI static struct std::pair &) const, class CommandRegistry::Symbol> const ParseRuleSymbols[]; };