// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// vector_icons.h.template is used to generate vector_icons.h. Edit the former
// rather than the latter.

#ifndef COMPONENTS_VECTOR_ICONS_VECTOR_ICONS_H_
#define COMPONENTS_VECTOR_ICONS_VECTOR_ICONS_H_

namespace gfx {
struct VectorIcon;
}

#define VECTOR_ICON_TEMPLATE_H(icon_name) \
extern const gfx::VectorIcon icon_name;

#if defined(FEATURE_MODULES) && defined(COMPONENTS_VECTOR_ICONS_IMPL)
#define VECTOR_ICON_EXPORT __attribute__((visibility("default")))
#endif

namespace vector_icons {

TEMPLATE_PLACEHOLDER

}  // namespace vector_icons

#undef VECTOR_ICON_TEMPLATE_H

#endif  // COMPONENTS_VECTOR_ICONS_VECTOR_ICONS_H_
