Rework for loops to use iterators, requiring pairs or ipairs function to handle multi-assignment
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Upsilon.BaseTypes.Number;
|
||||
using Upsilon.BaseTypes.ScriptTypeInterfaces;
|
||||
using Upsilon.Evaluator;
|
||||
using Upsilon.Text;
|
||||
@@ -51,9 +53,18 @@ namespace Upsilon.BaseTypes.UserData
|
||||
return List.GetType();
|
||||
}
|
||||
|
||||
public IEnumerator<(string Key, ScriptType value)> GetEnumerator()
|
||||
public ScriptType GetValueFromIndex(ScriptType index)
|
||||
{
|
||||
throw new System.NotImplementedException();
|
||||
var num = (ScriptNumberLong)index;
|
||||
return List[(int) num.Value].ToScriptType();
|
||||
}
|
||||
|
||||
public IEnumerator<ScriptType> GetEnumerator()
|
||||
{
|
||||
for (int i = 0; i < List.Count; i++)
|
||||
{
|
||||
yield return new ScriptNumberLong(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user