Phants Client for Redis™*
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1234]
 NPhants
 NRedis
 NParameterTypes
 CBitfieldSubcommandThis class takes a factory method approach to generating subcommands that can be used with the BitField() method. Each of the four methods creates a subcommand object that corresponds to those of the Redis BITFIELD command.
 CClientKillFilterThis class takes a factory method approach to generating filters that can be used with the ClientKill(IntegerSink, params ClientKillFilter[]) method, which supports multiple CLIENT KILL filters in one command.
 CFieldValuePairThis is a simple class (treated as a struct) that holds a key/value pair. It is used by the HmSet() and Xadd() methods.
 CGeoCoordThis is a simple class (treated as a struct) that holds the lat/long/member parameters used by the GeoAdd() method.
 CGeoRadiusOptions
 CKeyValuePairThis is a simple class (treated as a struct) that holds a key/value pair. It is used by the Mset() and MsetNx() methods.
 CLimitThis is a simple class (treated as a struct) that holds an offset and a count. It is used by the ZrangeByLex() and ZrevRangeByLex() methods. It is also a parameter that can be set in the ZrangeByScoreOptions and SortOptions classes.
 CRestoreOptionsOptions class used by the Restore() method.
 CScanOptionsOptions class used by the Hscan(), Scan(), Sscan(), and Zscan() methods.
 CSetOptionsOptions class used by the Set() method.
 CSortOptionsOptions class used by the Sort() method(s).
 CXclaimOptionsOptions class used by the Xclaim() method.
 CXgroupCreateOptionsOptions class used by the XgroupCreate() method.
 CXpendingOptionsOptions class used by the Xpending() method.
 CXReadGroupOptionsOptions class used by the XreadGroup() method.
 CXReadKeyIdPairThis is a simple class (treated as a struct) that holds a key/id pair. It is used by the Xread() and XreadGroup() methods.
 CXReadOptionsOptions class used by the Xread() method.
 CZaddOptionsOptions class used by the Zadd() and ZaddWithIncr() methods.
 CZaddScoreMemberPairThis is a simple class (treated as a struct) that holds a score/member pair. It is used by the Zadd() and ZaddWithIncr() methods.
 CZrangeByScoreOptionsOptions class used by the ZrangeByScore() and ZrevRangeByScore() methods.
 CZstoreOptionsOptions class used by the ZinterStore() and ZunionStore() methods.
 NParsers
 CArrayParserThis interface defines methods that are called at the start and end of a RESP Array. Since Arrays can contain any RESP type (including other Arrays), this interface does not provide callbacks for the individual elements. The interfaces that do provide this are:
 CBulkStringParserThis interface defines methods that are called when a RESP Bulk String is being parsed.
 CErrorParserThis interface defines the method that is called when a RESP Error is parsed.
 CIntegerParserThis interface defines the method that is called when a RESP Integer is parsed.
 CRespParserThis interface serves as a sort of super interface, combining all types of Resp parsers. A class interested in implementing a full featured Resp Parser would implement this interface. This might be overkill for user code though (e.g. a callback handler that expects only an integer), so we have an à la carte menu of interfaces here.
 CSimpleStringParserThis interface defines the method that is called when a RESP Simple String is parsed.
 NSinkAdaptersCommon callbacks for sink adapters.
 CBulkStringArraySinkAdapterAn implementation of the ArraySink interface that is designed to handle RESP Arrays of Bulk Strings.
 CBulkStringSinkAdapterAn implementation of the BulkStringSink interface that is designed to handle RESP Bulk Strings.
 CIntegerArraySinkAdapterAn implementation of the ArraySink interface that is designed to handle RESP Arrays of Integers.
 CIntegerSinkAdapterAn implementation of the IntegerSink interface that is designed to handle RESP Integers.
 CSimpleStringSinkAdapterAn implementation of the SimpleStringSink interface that is designed to handle RESP Simple Strings.
 NSinksData sinks; these interfaces define callbacks for each RESP data type. Any class that implements a given sink provides a way for CommandClient to return data corresponding to that sink type. Since any Redis command can return a RESP Error, an error callback is part of each sink type.
 CArraySinkSink interface used to support Redis commands that return Arrays. Since RESP Arrays can contain any data type (including other Arrays), this sink provides a callback for any and all RESP types.
 CBulkStringSinkSink interface used to support Redis commands that return Bulk Strings.
 CIntegerSinkSink interface used to support Redis commands that return Integer.
 CSimpleStringSinkSink interface used to support Redis commands that return Simple Strings.
 NUtil
 CBufferDescriptorBasically just a dumb struct for storing buffer state, but defined as a class so we can pass around references to it.
 CCommandClientRedis has two modes of operation: a "command" mode, and a "pub/sub" mode. CommandClient implements the former, meaning users issue Redis commands and receive responses via callbacks. The methods of this class directly correspond to the Redis commands defined here.
 CMessageParserThis class serves as a concrete implementation of the RespParser interface. It handles parsing of redis subscription methods. Since messages use a fixed format, state is tracked and everything is parsed into a specific structure.
 CRedisClientBaseServes as the base class for all Redis client implementations. Common socket connect/disconnect code lives here.
 CResponseProcessorThe methods of this interface reflect the message types generated by Redis while it is in "pub/sub" mode.
 CSubscriptionClientRedis has two modes of operation: a "command" mode, and a "pub/sub" mode. SubscriptionClient implements the latter, meaning users subscribe to channels and wait to receive messages. See pubsub for more information about the Redis publisher/subscriber model.