Closed zmalatrax closed 3 months ago
Closes #102, closes #103, closes #104, closes #105, closes #107, closes #108, closes #109, closes #110, closes #111, closes #112, closes #113, closes #114, closes #115, closes #116, closes #117, closes #118
To execute and implement hints related to dictionnaries, a few things must be implemented first:
ScopeManager
AssertLeFindSmallArc
AssertLeIsFirstArcExcluded
AssertLeIsSecondArcExcluded
DictManager
SquashedDictManager
Once done, dictionnaries can be handled.
AllocFelt252Dict
Felt252DictEntryInit
dict.cairo
Felt252DictEntryUpdate
GetSegmentArenaIndex
InitSquashData
GetCurrentAccessIndex
ShouldSkipSquashLoop
GetCurrentAccessDelta
ShouldContinueSquashLoop
GetNextDictKey
AssertLeFindSmallArcs
Closes #102, closes #103, closes #104, closes #105, closes #107, closes #108, closes #109, closes #110, closes #111, closes #112, closes #113, closes #114, closes #115, closes #116, closes #117, closes #118
To execute and implement hints related to dictionnaries, a few things must be implemented first:
ScopeManager
, to access variables across different hints (used inAssertLeFindSmallArc
,AssertLeIsFirstArcExcluded
andAssertLeIsSecondArcExcluded
).DictManager
a map of dictionnaries, where allocated dictionnaries are stored during executionSquashedDictManager
, handles the squashing of the dictionnaries, needed to end the run and generate correct traces.Once done, dictionnaries can be handled.
AllocFelt252Dict
Felt252DictEntryInit
dict.cairo
)Felt252DictEntryUpdate
dict.cairo
)GetSegmentArenaIndex
InitSquashData
GetCurrentAccessIndex
ShouldSkipSquashLoop
GetCurrentAccessDelta
ShouldContinueSquashLoop
GetNextDictKey
AssertLeFindSmallArcs
AssertLeIsFirstArcExcluded
AssertLeIsSecondArcExcluded