File: genns.hpp

package info (click to toggle)
cppgir 2.0%2Bgit20250629.2a7d9ce-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,220 kB
  • sloc: cpp: 16,451; ansic: 355; python: 86; makefile: 13; sh: 9
file content (25 lines) | stat: -rw-r--r-- 507 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef GENNS_HPP
#define GENNS_HPP

struct GeneratorContext;

#include <memory>
#include <vector>

class NamespaceGenerator
{
public:
  static std::shared_ptr<NamespaceGenerator> new_(
      GeneratorContext &ctx, const std::string &filename);

  virtual ~NamespaceGenerator() {}

  virtual std::string get_ns() const = 0;

  virtual std::vector<std::string> get_dependencies() const = 0;

  virtual std::string process_tree(
      const std::vector<std::string> &dep_headers) = 0;
};

#endif // GENNS_HPP