Add **Dictionaries to Visual Scripting**

This commit is contained in:
Wojtek Figat
2022-04-27 22:47:54 +02:00
parent 3c841b1be1
commit 158c29e598
20 changed files with 852 additions and 114 deletions

View File

@@ -245,6 +245,7 @@ public:
Dictionary& _collection;
int32 _index;
public:
Iterator(Dictionary& collection, const int32 index)
: _collection(collection)
, _index(index)
@@ -257,8 +258,6 @@ public:
{
}
public:
Iterator(const Iterator& i)
: _collection(i._collection)
, _index(i._index)
@@ -272,6 +271,10 @@ public:
}
public:
FORCE_INLINE int32 Index() const
{
return _index;
}
FORCE_INLINE bool IsEnd() const
{

View File

@@ -66,7 +66,7 @@ namespace
"FlaxEngine.Ray",// Ray
"FlaxEngine.Matrix",// Matrix
"System.Object[]",// Array
"Dictionary<System.Object,System.Object>",// Dictionary
"System.Collections.Generic.Dictionary`2[System.Object,System.Object]",// Dictionary
"System.Object",// ManagedObject
"System.Type",// Typename
"FlaxEngine.Int2"// Int2
@@ -767,6 +767,12 @@ Variant::Variant(const Array<Variant, HeapAllocation>& v)
new(array)Array<Variant, HeapAllocation>(v);
}
Variant::Variant(Dictionary<Variant, Variant>&& v)
: Type(VariantType::Dictionary)
{
AsDictionary = New<Dictionary<Variant, Variant>>(MoveTemp(v));
}
Variant::Variant(const Dictionary<Variant, Variant>& v)
: Type(VariantType::Dictionary)
{

View File

@@ -228,6 +228,7 @@ public:
explicit Variant(const Matrix& v);
Variant(Array<Variant, HeapAllocation>&& v);
Variant(const Array<Variant, HeapAllocation>& v);
explicit Variant(Dictionary<Variant, Variant, HeapAllocation>&& v);
explicit Variant(const Dictionary<Variant, Variant, HeapAllocation>& v);
explicit Variant(const Span<byte>& v);
explicit Variant(const CommonValue& v);