//+------------------------------------------------------------------+ //| Main.mqh | //| Copyright 2026, Niquel Mendoza. | //| https://www.mql5.com/ | //+------------------------------------------------------------------+ #property copyright "Copyright 2026, Niquel Mendoza." #property link "https://www.mql5.com/" #property strict #ifndef FASTCOLLECTIONSBYLEO_COLHASH_HASHSET_MAIN_MQH #define FASTCOLLECTIONSBYLEO_COLHASH_HASHSET_MAIN_MQH //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ #include "..\\HashBases\\Main.mqh" //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ #define CHashSetFast(k) TSN::CHashSetFastInternal #define CHashSetFastIterator(k) TSN::CHashSetFastIteratorInt //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ namespace TSN { template struct CHashSetFastIteratorInt; } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ namespace TSN { //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ template struct CHashSetFastInternalPar { TKey key; ulong hash; }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ template class CHashSetFastInternal : public CFastHashTableBase, TKey, TBase> { public: CHashSetFastInternal(int initial_size = 128) { Init(initial_size); } ~CHashSetFastInternal(void) {} //--- CHashSetFastIteratorInt BeginIteration(); }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ template CHashSetFastIteratorInt CHashSetFastInternal::BeginIteration() { return CHashSetFastIteratorInt(&this); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ template struct CHashSetFastIteratorInt : public CFastHashTableIteratorBase, TKey> { CHashSetFastIteratorInt(CHashSetFastInternal* ptr) : CFastHashTableIteratorBase, TKey>(ptr) { } }; } //+------------------------------------------------------------------+ #endif // FASTCOLLECTIONSBYLEO_COLHASH_HASHSET_MAIN_MQH