// This file is generated by kconfig_compiler_kf6 from sessionconfig.kcfg.
// All changes you do to this file will be lost.
#ifndef SESSIONCONFIG_H
#define SESSIONCONFIG_H

#include <clangsettings/sessionsettings/sessionconfigskeleton.h>
#include <clangprivateexport.h>

#include <kconfigskeleton.h>
#include <QCoreApplication>
#include <QDebug>

class KDEVCLANGPRIVATE_EXPORT SessionConfig : public SessionConfigSkeleton
{
  public:

    static SessionConfig *self();
    ~SessionConfig() override;

    /**
      Get macros
    */
    static
    bool macros()
    {
      return self()->mMacros;
    }

    /**
      Is macros Immutable
    */
    static
    bool isMacrosImmutable()
    {
      return self()->isImmutable( QStringLiteral( "macros" ) );
    }

    /**
      Get lookAhead
    */
    static
    bool lookAhead()
    {
      return self()->mLookAhead;
    }

    /**
      Is lookAhead Immutable
    */
    static
    bool isLookAheadImmutable()
    {
      return self()->isImmutable( QStringLiteral( "lookAhead" ) );
    }

    /**
      Get forwardDeclare
    */
    static
    bool forwardDeclare()
    {
      return self()->mForwardDeclare;
    }

    /**
      Is forwardDeclare Immutable
    */
    static
    bool isForwardDeclareImmutable()
    {
      return self()->isImmutable( QStringLiteral( "forwardDeclare" ) );
    }

  protected:
    SessionConfig();
    friend class SessionConfigHelper;


    // Clang Settings
    bool mMacros;
    bool mLookAhead;
    bool mForwardDeclare;
};

#endif

