// Copyright (c) 2024 Codemongous LLC. All Rights Reserved.

#pragma once

#include "ISCW_UScriptStruct.h"
#include "SCW_UStruct.h"

using std::wstring;

class UScriptStruct;

namespace Sourcify
{
	class SCW_UScriptStruct : public SCW_UStruct, public virtual ISCW_UScriptStruct
	{
	public:
		SCW_UScriptStruct(UScriptStruct* InScriptStruct);

		ISCW_UScriptStructPtr ToUScriptStructPtr() override;

		ISCW_UScriptStructConstPtr ToUScriptStructConstPtr() const override;

		UScriptStruct* ToUScriptStruct() const;
		
	protected:
		UScriptStruct* ScriptStruct;
	};
} // namespace Sourcify