Sha256: 65820b42495ad25e0242d87c22e1649d513c6da1eedb86ef41065236232971bc

Contents?: true

Size: 923 Bytes

Versions: 1

Compression:

Stored size: 923 Bytes

Contents

#ifndef _IV_PHONIC_AST_FWD_H_
#define _IV_PHONIC_AST_FWD_H_
#include <ruby.h>
#include <iv/ast.h>
namespace iv {
namespace phonic {
class AstFactory;
}  // namespace iv::phonic
namespace core {
namespace ast {
template<>
class AstNodeBase<iv::phonic::AstFactory>
  : public Inherit<iv::phonic::AstFactory, kAstNode> {
 public:
  void Location(std::size_t begin, std::size_t end) {
    begin_ = begin;
    end_ = end;
  }
 private:
  std::size_t begin_;
  std::size_t end_;
};
} }  // namespace iv::core::ast
namespace phonic {
#define V(AST) typedef core::ast::AST<AstFactory> AST;
  AST_NODE_LIST(V)
#undef V
#define V(X, XS) typedef core::SpaceVector<AstFactory, X *>::type XS;
  AST_LIST_LIST(V)
#undef V
#define V(S) typedef core::SpaceUString<AstFactory>::type S;
  AST_STRING(V)
#undef V
typedef core::ast::AstVisitor<AstFactory>::const_type AstVisitor;

} }  // namespace iv::phonic
#endif  // _IV_PHONIC_AST_FWD_H_

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
iv-phonic-0.0.5 ext/iv/phonic/ast-fwd.h