#ifndef THIRD_PARTY_BLINK_RENDERER_CORE_SCHEDULER_TASK_ATTRIBUTION_INFO_IMPL_H_
#define THIRD_PARTY_BLINK_RENDERER_CORE_SCHEDULER_TASK_ATTRIBUTION_INFO_IMPL_H_
#include "third_party/blink/public/common/scheduler/task_attribution_id.h"
#include "third_party/blink/renderer/core/core_export.h"
#include "third_party/blink/renderer/core/scheduler/script_wrappable_task_state.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/heap/member.h"
#include "third_party/blink/renderer/platform/scheduler/public/task_attribution_info.h"
#include "third_party/blink/renderer/platform/wtf/casting.h"
namespace blink {
class AbortSignal;
class DOMTaskSignal;
class SoftNavigationContext;
class CORE_EXPORT TaskAttributionInfoImpl final
: public GarbageCollected<TaskAttributionInfoImpl>,
public WrappableTaskState,
public scheduler::TaskAttributionInfo { … };
template <>
struct DowncastTraits<TaskAttributionInfoImpl> { … };
}
#endif