LeviLamina
|
Classes | |
struct | ChainedSubcommand |
struct | ConstrainedValue |
struct | Enum |
struct | Factorization |
struct | LexicalToken |
struct | OptionalParameterChain |
struct | Overload |
struct | ParamSymbols |
class | Parser |
struct | ParseRule |
struct | ParseTable |
struct | ParseToken |
struct | RegistryState |
struct | SemanticInfo |
struct | Signature |
struct | SoftEnum |
class | Symbol |
struct | SymbolHasher |
struct | SymbolPairHasher |
Public Types | |
enum class | HardNonTerminal : int { Epsilon = 1048576 , Int = 1048577 , Float = 1048578 , Val = 1048579 , RVal = 1048580 , WildcardInt = 1048581 , Operator = 1048582 , CompareOperator = 1048583 , Selection = 1048584 , StandaloneSelection = 1048585 , WildcardSelection = 1048586 , NonIdSelector = 1048587 , ScoresArg = 1048588 , ScoresArgs = 1048589 , ScoreSelectParam = 1048590 , ScoreSelector = 1048591 , TagSelector = 1048592 , FilePath = 1048593 , FilePathVal = 1048594 , FilePathCont = 1048595 , IntegerRangeVal = 1048596 , IntegerRangePostVal = 1048597 , IntegerRange = 1048598 , FullIntegerRange = 1048599 , RationalRangeVal = 1048600 , RationalRangePostVal = 1048601 , RationalRange = 1048602 , FullRationalRange = 1048603 , SelArgs = 1048604 , Args = 1048605 , Arg = 1048606 , MArg = 1048607 , MValue = 1048608 , NameArg = 1048609 , TypeArg = 1048610 , FamilyArg = 1048611 , HasPermissionArg = 1048612 , HasPermissionArgs = 1048613 , HasPermissionSelector = 1048614 , HasPermissionElement = 1048615 , HasPermissionElements = 1048616 , TagArg = 1048617 , HasItemElement = 1048618 , HasItemElements = 1048619 , HasItemArg = 1048620 , HasItemArgs = 1048621 , HasItemSelector = 1048622 , EquipmentSlotEnum = 1048623 , PropertyValue = 1048624 , HasPropertyParamValue = 1048625 , HasPropertyParamEnumValue = 1048626 , HasPropertyArg = 1048627 , HasPropertyArgs = 1048628 , HasPropertyElement = 1048629 , HasPropertyElements = 1048630 , HasPropertySelector = 1048631 , Id = 1048632 , IdCont = 1048633 , CoordXInt = 1048634 , CoordYInt = 1048635 , CoordZInt = 1048636 , CoordXFloat = 1048637 , CoordYFloat = 1048638 , CoordZFloat = 1048639 , Position = 1048640 , PositionFloat = 1048641 , MessageExp = 1048642 , Message = 1048643 , MessageRoot = 1048644 , PostSelector = 1048645 , RawText = 1048646 , RawTextCont = 1048647 , JsonValue = 1048648 , JsonField = 1048649 , JsonObject = 1048650 , JsonObjectFields = 1048651 , JsonObjectCont = 1048652 , JsonArray = 1048653 , JsonArrayValues = 1048654 , JsonArrayCont = 1048655 , BlockState = 1048656 , BlockStateKey = 1048657 , BlockStateValue = 1048658 , BlockStateValues = 1048659 , BlockStateArray = 1048660 , BlockStateArrayCont = 1048661 , Command = 1048662 , SlashCommand = 1048663 , CodeBuilderArg = 1048664 , CodeBuilderArgs = 1048665 , CodeBuilderSelectParam = 1048666 , CodeBuilderSelector = 1048667 } |
using | ValueTypeID = uint64 |
using | EnumValueID = uint64 |
using | EnumID = uint |
using | SoftEnumID = uint |
using | ChainedSubcommandValueID = uint64 |
using | ChainedSubcommandID = uint |
using | SemanticConstraintID = uchar |
using | ConstrainedValueID = uint |
using | ConstrainedValueLookupKey = ::std::pair<uint64, uint> |
using | CommandOverrideFunctor |
using | ScoreboardScoreAccessor = ::std::function<int(bool&, ::std::string const&, ::Actor const&)> |
using | HardTerminal = ::CommandLexer::TokenType |
using | NonTerminal = ::CommandRegistry::Symbol |
using | Terminal = ::CommandRegistry::Symbol |
using | SymbolVector = ::std::vector<::CommandRegistry::Symbol> |
using | SymbolSet |
using | ParseMap |
using | ProcessFunction |
using | RuleIndex = int |
using | ParseFunction |
using | EnumConversionFunction = ::std::function<void(void*, uint64)> |
using | ChainedSubcommandConversionFunction = ::std::function<void(void*, uint64)> |
using | PredictTable |
using | ParamVisitCallback |
using | CommandVisitCallback = ::std::function<bool(::CommandRegistry::ParseToken const*, ::CommandOrigin const&)> |
using | ParseTableMap = ::std::map<uint, ::CommandRegistry::ParseTable> |
Public Member Functions | |
template<class T > | |
bool | parse (void *storage, CommandRegistry::ParseToken const &token, CommandOrigin const &origin, int version, std::string &error, std::vector< std::string > &errorParams) const |
template<class E , class C > | |
bool | parseEnum (void *storage, CommandRegistry::ParseToken const &token, CommandOrigin const &origin, int version, std::string &error, std::vector< std::string > &errorParams) const |
uint64 | getEnumData (ParseToken const &token) const |
MCAPI | CommandRegistry (bool isEduMode) |
MCAPI::CommandRegistry::Symbol | _addChainedSubcommandValuesInternal (::std::string const &name, ::std::vector<::std::pair<::std::string, uint > > const &strings, ::Bedrock::typeid_t<::CommandRegistry > type, bool(CommandRegistry::*signature)(void *, ::CommandRegistry::ParseToken const &, ::CommandOrigin const &, int, ::std::string &, ::std::vector<::std::string > &) const, ::CommandRegistry::Signature *parse) |
MCAPI::CommandRegistry::Symbol | _addChainedSubcommandValuesInternal (::std::string const &name, ::std::vector<::std::pair< uint64, uint > > const &values, ::Bedrock::typeid_t<::CommandRegistry > type, bool(CommandRegistry::*signature)(void *, ::CommandRegistry::ParseToken const &, ::CommandOrigin const &, int, ::std::string &, ::std::vector<::std::string > &) const, ::CommandRegistry::Signature *parse) |
MCAPI::CommandRegistry::Symbol | _addEnumValuesInternal (::std::string const &name, ::std::vector<::std::pair<::std::string, uint64 > > const &strings, ::Bedrock::typeid_t<::CommandRegistry > type, bool(CommandRegistry::*parse)(void *, ::CommandRegistry::ParseToken const &, ::CommandOrigin const &, int, ::std::string &, ::std::vector<::std::string > &) const) |
MCAPI::CommandRegistry::Symbol | _addEnumValuesInternal (::std::string const &name, ::std::vector<::std::pair< uint64, uint64 > > const &values, ::Bedrock::typeid_t<::CommandRegistry > type, bool(CommandRegistry::*parse)(void *, ::CommandRegistry::ParseToken const &, ::CommandOrigin const &, int, ::std::string &, ::std::vector<::std::string > &) const) |
MCAPI::CommandRegistry::Symbol | _addFunctionSoftEnum () |
MCAPI ::std::unique_ptr<::CommandSelector<::Actor > > | _createSelector (::CommandRegistry::ParseToken const &root, ::CommandOrigin const &origin, int version, ::std::string &error, ::std::vector<::std::string > &errorParams) const |
MCAPI::CommandRegistry::Symbol | _getConstrainedParamEnumSymbol (::CommandRegistry::Symbol symbol) const |
MCAPI bool | _isCommandElementValid (::std::string const &name) const |
MCAPI bool | _matchesEnumConstraintsSet (::CommandRegistry::Symbol const &commandParamSymbol, ::CommandOrigin const &origin, ::CommandRegistry::Symbol const &value, ::SemanticConstraint requiredConstraints) const |
MCAPI void | addChainedSubcommandValuesToExisting (uint index, ::std::vector<::std::pair< uint64, uint > > const &values) |
MCAPI void | addEnumValueConstraints (::std::string const &enumName, ::std::vector<::std::string > const &values, ::SemanticConstraint constraints) |
MCAPI int | addEnumValues (::std::string const &name, ::std::vector<::std::string > const &values) |
MCAPI void | addEnumValuesToExisting (uint index, ::std::vector<::std::pair< uint64, uint64 > > const &values) |
MCAPI::CommandRegistry::Symbol | addPostfix (::std::string const &name) |
MCAPI void | addRule (::CommandRegistry::Symbol symbol, ::std::vector<::CommandRegistry::Symbol > derivation, ::std::function<::CommandRegistry::ParseToken *(::CommandRegistry::ParseToken &, ::CommandRegistry::Symbol)> process, ::CommandVersion versions) |
MCAPI void | addSemanticConstraint (::SemanticConstraint constraintType) |
MCAPI int | addSoftEnum (::std::string const &name, ::std::vector<::std::string > values) |
MCAPI void | addSoftEnumValues (::std::string const &enumName, ::std::vector<::std::string > values) |
MCAPI::CommandRegistry::Symbol | addSoftTerminal (::std::string const &name) |
MCAPI void | buildFirstSet (::CommandRegistry::ParseTable &table, ::CommandRegistry::Symbol t, uint version) const |
MCAPI void | buildFollowSet (::CommandRegistry::ParseTable &table, ::CommandRegistry::Symbol t, uint version, ::std::set<::CommandRegistry::Symbol > &workingSet) const |
MCAPI::CommandRegistry::Symbol | buildOptionalRuleChain (::CommandRegistry::Signature const &signature, ::std::vector<::CommandParameterData > const ¶ms, ::std::vector<::CommandRegistry::Symbol > const &symbols) |
MCAPI void | buildParseTable (uint version) const |
MCAPI void | buildPredictTable (::CommandRegistry::ParseTable &table, uint version) const |
MCAPI::CommandRegistry::Symbol | buildRules (::CommandRegistry::Signature &signature, ::std::vector<::gsl::not_null<::CommandRegistry::Overload * > > const &overloads, uint64 firstParam) |
MCAPI bool | buildSelector (::ActorSelectorArgs const &args, ::CommandSelectorBase *output, ::std::string &error) const |
MCAPI ::std::unique_ptr<::Command > | createCommand (::CommandRegistry::ParseToken const &root, ::CommandOrigin const &origin, int version, ::std::string &error, ::std::vector<::std::string > &errorParams) const |
MCAPI::std::string | describe (::CommandParameterData const ¶m) const |
MCAPI::std::string | describe (::CommandRegistry::Symbol symbol) const |
MCAPI::std::string | describe (::CommandRegistry::Signature const &alias, ::std::string const &overload, ::CommandRegistry::Overload const &highlight, uint start, uint *length, uint *command) const |
MCAPI::CommandRegistry::Signature const * | findCommand (::std::string const &) const |
MCFOLD::CommandRegistry::Signature * | findCommand (::std::string const &name) |
MCAPI::CommandRegistry::Symbol | findEnumValue (::std::string const &name) const |
MCAPI::CommandRegistry::Symbol | findIdentifierInfo (::std::string const &name) const |
MCAPI::CommandRegistry::Symbol | findPostfix (::std::string const &input) const |
MCAPI void | fireCommandParseTableTelemetry (::IMinecraftEventing const &eventing, bool isServer) const |
MCAPI void | forEachNonTerminal (::std::function< void(::CommandRegistry::Symbol)> func) const |
MCAPI::Json::Value | generateDocumentationMetadata (bool generateInternalMetadata) const |
MCAPI ::std::vector<::std::string > | getAliases (::std::string const &command) const |
MCAPI ::std::vector<::std::string > | getAlphabeticalLookup (::CommandOrigin const &origin) const |
MCAPI::std::string | getCommandName (::std::string const &commandLine) const |
MCAPI::CommandSyntaxInformation | getCommandOverloadSyntaxInformation (::CommandOrigin const &origin, ::std::string const &commandName) const |
MCAPI ::InvertableFilter<::std::string > | getInvertableFilter (::CommandRegistry::ParseToken const &token) const |
MCAPI bool | isValid (::CommandRegistry::Symbol symbol) const |
MCAPI bool | originCanRun (::CommandOrigin const &origin, ::CommandRegistry::Signature const &command) const |
MCAPI bool | originCanRun (::CommandOrigin const &origin, ::CommandRegistry::Overload const &overload) const |
MCAPI bool | parseSelector (::ActorSelectorArgs &args, ::CommandRegistry::ParseToken const &token, ::CommandOrigin const &origin, int version, ::std::string &error, ::std::vector<::std::string > &errorParams) const |
MCAPI void | registerAlias (::std::string name, ::std::string alias) |
MCAPI void | registerCommand (::std::string const &name, char const *description, ::CommandPermissionLevel requirement, ::CommandFlag f1, ::CommandFlag f2={}) |
MCAPI void | registerOverloadInternal (::CommandRegistry::Signature &signature, ::CommandRegistry::Overload &overload) |
MCAPI void | removeSoftEnumValues (::std::string const &enumName, ::std::vector<::std::string > values) |
MCAPI::AvailableCommandsPacket | serializeAvailableCommands () const |
MCAPI void | setCommandRegistrationOverride (CommandOverrideFunctor functor) |
MCAPI void | setSoftEnumValues (::std::string const &enumName, ::std::vector<::std::string > values) |
MCAPI void | setupChainedSubcommandOverloadRules (::CommandRegistry::Signature &signature) |
MCAPI void | setupOverloadRules (::CommandRegistry::Signature &signature) |
MCAPI::std::string | symbolToString (::CommandRegistry::Symbol symbol) const |
MCAPI void * | $ctor (bool isEduMode) |
MCAPI void | $dtor () |
Static Public Member Functions | |
static MCAPI ::std::string | _removeStringQuotes (::std::string const &str) |
static MCFOLD ::CommandRegistry::ParseToken * | collapse (::CommandRegistry::ParseToken &parent, ::CommandRegistry::Symbol symbol) |
static MCAPI ::CommandRegistry::ParseToken * | collapseOn (::CommandRegistry::ParseToken &parent, ::CommandRegistry::Symbol symbol, ::CommandRegistry::Symbol boundSymbol) |
static MCAPI ::CommandRegistry::ParseToken * | expand (::CommandRegistry::ParseToken &parent, ::CommandRegistry::Symbol symbol) |
static MCAPI ::CommandRegistry::ParseToken * | expandExcept (::CommandRegistry::ParseToken &parent, ::CommandRegistry::Symbol symbol, ::CommandRegistry::Symbol boundSymbol) |
static MCAPI ::CommandRegistry::ParseToken * | fold (::CommandRegistry::ParseToken &parent, ::CommandRegistry::Symbol symbol, ::CommandRegistry::Symbol boundSymbol) |
static MCAPI ::CommandRegistry::ParseToken * | kill (::CommandRegistry::ParseToken &parent, ::CommandRegistry::Symbol symbol) |
static MCAPI bool | readFloat (float &value, ::CommandRegistry::ParseToken const &token, ::std::string &error, ::std::vector<::std::string > &errorParams) |
static MCAPI bool | readInt (int &value, ::CommandRegistry::ParseToken const &token, ::std::string &error, ::std::vector<::std::string > &errorParams) |
static MCAPI bool | readRelativeCoordinate (bool &relative, float &offset, ::CommandRegistry::ParseToken const &token, bool readIntegerAsCentered, ::std::string &error, ::std::vector<::std::string > &errorParams) |
static MCAPI bool | readString (::std::string &value, ::CommandRegistry::ParseToken const &token, ::std::string &error, ::std::vector<::std::string > &errorParams) |
static MCAPI char const *& | CODE_STATUS_PROPERTY_NAME () |
static MCAPI char const *& | COMMAND_NAME_ENUM_NAME () |
static MCAPI char const *& | FUNCTION_NAME_SOFTENUM_NAME () |
static MCAPI char const *& | HASITEM_PARAM_DATA () |
static MCAPI char const *& | HASITEM_PARAM_ITEM () |
static MCAPI char const *& | HASITEM_PARAM_LOCATION () |
static MCAPI char const *& | HASITEM_PARAM_QUANTITY () |
static MCAPI char const *& | HASITEM_PARAM_SLOT () |
static MCAPI char const *& | HASPERMISSIONSTATE_ENUM_DISABLED () |
static MCAPI char const *& | HASPERMISSIONSTATE_ENUM_ENABLED () |
static MCAPI char const *& | HASPROPERTY_PARAM_PROPERTY_NAME () |
static MCAPI ::std::add_lvalue_reference_t<::std::pair< bool(CommandRegistry::*)(void *, ::CommandRegistry::ParseToken const &, ::CommandOrigin const &, int, ::std::string &, ::std::vector<::std::string > &) const, ::CommandRegistry::Symbol > const[]> | ParseRuleSymbols () |
static MCAPI char const *& | TAG_VALUES_SOFTENUM_NAME () |
static MCAPI char const *& | UNLOCKABLE_RECIPES_SOFTENUM_NAME () |
Public Attributes | |
::std::function< void(::Packet const &)> | mNetworkUpdateCallback |
ScoreboardScoreAccessor | mGetScoreForObjective |
bool | mIsEduMode |
::std::vector<::CommandRegistry::ParseRule > | mRules |
::std::map< uint, ::CommandRegistry::ParseTable > | mParseTables |
::std::vector<::CommandRegistry::OptionalParameterChain > | mOptionals |
::std::vector<::std::string > | mEnumValues |
::std::vector<::CommandRegistry::Enum > | mEnums |
::std::vector<::std::string > | mChainedSubcommandValues |
::std::vector<::CommandRegistry::ChainedSubcommand > | mChainedSubcommands |
::std::vector<::CommandRegistry::Factorization > | mFactorizations |
::std::vector<::std::string > | mPostfixes |
::std::map<::std::string, uint > | mEnumLookup |
::std::map<::std::string, uint64 > | mEnumValueLookup |
::std::map<::std::string, uint > | mChainedSubcommandLookup |
::std::map<::std::string, uint64 > | mChainedSubcommandValueLookup |
::std::vector<::CommandRegistry::Symbol > | mCommandSymbols |
::std::map<::std::string, ::CommandRegistry::Signature > | mSignatures |
::std::map<::Bedrock::typeid_t<::CommandRegistry >, int > | mTypeLookup |
::std::map<::std::string, ::std::string > | mAliases |
::std::vector<::SemanticConstraint > | mSemanticConstraints |
::std::map<::SemanticConstraint, uchar > | mSemanticConstraintLookup |
::std::vector<::CommandRegistry::ConstrainedValue > | mConstrainedValues |
::std::map<::std::pair< uint64, uint >, uint > | mConstrainedValueLookup |
::std::vector<::CommandRegistry::SoftEnum > | mSoftEnums |
::std::map<::std::string, uint > | mSoftEnumLookup |
::std::vector<::CommandRegistry::RegistryState > | mStateStack |
::CommandRegistry::ParamSymbols | mArgs |
::std::unordered_set< int > | mSkipOnEpsAutocompleteSymbols |
::std::unordered_set< int > | mAllowEmptySymbols |
CommandOverrideFunctor | mCommandOverrideFunctor |
::std::unique_ptr<::CommandRunStats > | mCommandRunStats |
using CommandRegistry::CommandOverrideFunctor |
using CommandRegistry::SymbolSet |
using CommandRegistry::ParseMap |
using CommandRegistry::ProcessFunction |
using CommandRegistry::ParseFunction |
using CommandRegistry::PredictTable |
using CommandRegistry::ParamVisitCallback |