JavascriptStringEnumerator.h 1008 B

1234567891011121314151617181920212223
  1. //-------------------------------------------------------------------------------------------------------
  2. // Copyright (C) Microsoft. All rights reserved.
  3. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
  4. //-------------------------------------------------------------------------------------------------------
  5. #pragma once
  6. namespace Js
  7. {
  8. class JavascriptStringEnumerator : public JavascriptEnumerator
  9. {
  10. private:
  11. Field(JavascriptString*) stringObject;
  12. Field(int) index;
  13. protected:
  14. DEFINE_VTABLE_CTOR(JavascriptStringEnumerator, JavascriptEnumerator);
  15. public:
  16. JavascriptStringEnumerator(JavascriptString* stringObject, ScriptContext * requestContext);
  17. virtual void Reset() override;
  18. virtual JavascriptString * MoveAndGetNext(PropertyId& propertyId, PropertyAttributes* attributes = nullptr) override;
  19. virtual uint32 GetCurrentItemIndex() override { return index; }
  20. };
  21. }