zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DirectiveHandler.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 #ifndef COMPILER_DIRECTIVE_HANDLER_H_
8 #define COMPILER_DIRECTIVE_HANDLER_H_
9 
11 #include "compiler/Pragma.h"
13 
14 class TDiagnostics;
15 
17 {
18  public:
20  TDiagnostics& diagnostics);
21  virtual ~TDirectiveHandler();
22 
23  const TPragma& pragma() const { return mPragma; }
24  const TExtensionBehavior& extensionBehavior() const { return mExtensionBehavior; }
25 
26  virtual void handleError(const pp::SourceLocation& loc,
27  const std::string& msg);
28 
29  virtual void handlePragma(const pp::SourceLocation& loc,
30  const std::string& name,
31  const std::string& value);
32 
33  virtual void handleExtension(const pp::SourceLocation& loc,
34  const std::string& name,
35  const std::string& behavior);
36 
37  virtual void handleVersion(const pp::SourceLocation& loc,
38  int version);
39 
40  private:
41  TPragma mPragma;
42  TExtensionBehavior& mExtensionBehavior;
43  TDiagnostics& mDiagnostics;
44 };
45 
46 #endif // COMPILER_DIRECTIVE_HANDLER_H_
std::map< std::string, TBehavior > TExtensionBehavior
Definition: Pragma.h:10
int const char * version
Definition: zlib.h:813
EGLImageKHR EGLint * name
Definition: eglext.h:284
virtual ~TDirectiveHandler()
virtual void handleVersion(const pp::SourceLocation &loc, int version)
virtual void handleError(const pp::SourceLocation &loc, const std::string &msg)
TDirectiveHandler(TExtensionBehavior &extBehavior, TDiagnostics &diagnostics)
virtual void handlePragma(const pp::SourceLocation &loc, const std::string &name, const std::string &value)
EGLSurface EGLint void ** value
Definition: eglext.h:301
virtual void handleExtension(const pp::SourceLocation &loc, const std::string &name, const std::string &behavior)
GLsizei const GLcharARB ** string
Definition: glew.h:5638
const TPragma & pragma() const
const TExtensionBehavior & extensionBehavior() const