text: // Generated by Cap'n Proto compiler, DO NOT EDIT
  // source: grammar.capnp
  
  #pragma once
  
  #include <capnp/generated-header-support.h>
  #include <kj/windows-sanity.h>
  
  #if CAPNP_VERSION != 9000
  #error "Version mismatch between generated code and library headers.  You must use the same version of the Cap'n Proto compiler and library."
  #endif
  
  
  CAPNP_BEGIN_HEADER
  
  namespace capnp {
  namespace schemas {
  
  CAPNP_DECLARE_SCHEMA(e75816b56529d464);
  CAPNP_DECLARE_SCHEMA(991c7a3693d62cf2);
  CAPNP_DECLARE_SCHEMA(90f2a60678fd2367);
  CAPNP_DECLARE_SCHEMA(8e207d4dfe54d0de);
  CAPNP_DECLARE_SCHEMA(c90246b71adedbaa);
  CAPNP_DECLARE_SCHEMA(aee8397040b0df7a);
  CAPNP_DECLARE_SCHEMA(aa28e1400d793359);
  CAPNP_DECLARE_SCHEMA(96efe787c17e83bb);
  CAPNP_DECLARE_SCHEMA(d5e71144af1ce175);
  CAPNP_DECLARE_SCHEMA(d00489d473826290);
  CAPNP_DECLARE_SCHEMA(fb5aeed95cdf6af9);
  CAPNP_DECLARE_SCHEMA(94099c3f9eb32d6b);
  CAPNP_DECLARE_SCHEMA(b3f66e7a79d81bcd);
  CAPNP_DECLARE_SCHEMA(fffe08a9a697d2a5);
  CAPNP_DECLARE_SCHEMA(e5104515fd88ea47);
  CAPNP_DECLARE_SCHEMA(89f0c973c103ae96);
  CAPNP_DECLARE_SCHEMA(e93164a80bfe2ccf);
  CAPNP_DECLARE_SCHEMA(b348322a8dcf0d0c);
  CAPNP_DECLARE_SCHEMA(8f2622208fb358c8);
  CAPNP_DECLARE_SCHEMA(d0d1a21de617951f);
  CAPNP_DECLARE_SCHEMA(992a90eaf30235d3);
  CAPNP_DECLARE_SCHEMA(eb971847d617c0b9);
  CAPNP_DECLARE_SCHEMA(c6238c7d62d65173);
  CAPNP_DECLARE_SCHEMA(9cb9e86e3198037f);
  CAPNP_DECLARE_SCHEMA(84e4f3f5a807605c);
  
  }  // namespace schemas
  }  // namespace capnp
  
  namespace capnp {
  namespace compiler {
  
  struct LocatedText {
    LocatedText() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(e75816b56529d464, 1, 1)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct LocatedInteger {
    LocatedInteger() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(991c7a3693d62cf2, 2, 0)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct LocatedFloat {
    LocatedFloat() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(90f2a60678fd2367, 2, 0)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Expression {
    Expression() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      UNKNOWN,
      POSITIVE_INT,
      NEGATIVE_INT,
      FLOAT,
      STRING,
      RELATIVE_NAME,
      LIST,
      TUPLE,
      BINARY,
      APPLICATION,
      MEMBER,
      ABSOLUTE_NAME,
      IMPORT,
      EMBED,
    };
    struct Param;
    struct Application;
    struct Member;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(8e207d4dfe54d0de, 3, 2)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Expression::Param {
    Param() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      UNNAMED,
      NAMED,
    };
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(c90246b71adedbaa, 1, 2)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Expression::Application {
    Application() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(aee8397040b0df7a, 3, 2)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Expression::Member {
    Member() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(aa28e1400d793359, 3, 2)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration {
    Declaration() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      FILE,
      USING,
      CONST,
      ENUM,
      ENUMERANT,
      STRUCT,
      FIELD,
      UNION,
      GROUP,
      INTERFACE,
      METHOD,
      ANNOTATION,
      NAKED_ID,
      NAKED_ANNOTATION,
      BUILTIN_VOID,
      BUILTIN_BOOL,
      BUILTIN_INT8,
      BUILTIN_INT16,
      BUILTIN_INT32,
      BUILTIN_INT64,
      BUILTIN_U_INT8,
      BUILTIN_U_INT16,
      BUILTIN_U_INT32,
      BUILTIN_U_INT64,
      BUILTIN_FLOAT32,
      BUILTIN_FLOAT64,
      BUILTIN_TEXT,
      BUILTIN_DATA,
      BUILTIN_LIST,
      BUILTIN_OBJECT,
      BUILTIN_ANY_POINTER,
      BUILTIN_ANY_STRUCT,
      BUILTIN_ANY_LIST,
      BUILTIN_CAPABILITY,
    };
    struct BrandParameter;
    struct AnnotationApplication;
    struct ParamList;
    struct Param;
    struct Id;
    struct Using;
    struct Const;
    struct Field;
    struct Interface;
    struct Method;
    struct Annotation;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(96efe787c17e83bb, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::BrandParameter {
    BrandParameter() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(d5e71144af1ce175, 1, 1)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::AnnotationApplication {
    AnnotationApplication() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    struct Value;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(d00489d473826290, 1, 2)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::AnnotationApplication::Value {
    Value() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      NONE,
      EXPRESSION,
    };
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(fb5aeed95cdf6af9, 1, 2)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::ParamList {
    ParamList() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      NAMED_LIST,
      TYPE,
      STREAM,
    };
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(b3f66e7a79d81bcd, 2, 1)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Param {
    Param() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    struct DefaultValue;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(fffe08a9a697d2a5, 2, 4)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Param::DefaultValue {
    DefaultValue() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      NONE,
      VALUE,
    };
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(e5104515fd88ea47, 2, 4)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Id {
    Id() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      UNSPECIFIED,
      UID,
      ORDINAL,
    };
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(89f0c973c103ae96, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Using {
    Using() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(e93164a80bfe2ccf, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Const {
    Const() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(b348322a8dcf0d0c, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Field {
    Field() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    struct DefaultValue;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(8f2622208fb358c8, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Field::DefaultValue {
    DefaultValue() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      NONE,
      VALUE,
    };
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(d0d1a21de617951f, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Interface {
    Interface() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(992a90eaf30235d3, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Method {
    Method() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    struct Results;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(eb971847d617c0b9, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Method::Results {
    Results() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
    enum Which: uint16_t {
      NONE,
      EXPLICIT,
    };
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(c6238c7d62d65173, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct Declaration::Annotation {
    Annotation() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(9cb9e86e3198037f, 2, 8)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  struct ParsedFile {
    ParsedFile() = delete;
  
    class Reader;
    class Builder;
    class Pipeline;
  
    struct _capnpPrivate {
      CAPNP_DECLARE_STRUCT_HEADER(84e4f3f5a807605c, 0, 1)
      #if !CAPNP_LITE
      static constexpr ::capnp::_::RawBrandedSchema const* brand() { return &schema->defaultBrand; }
      #endif  // !CAPNP_LITE
    };
  };
  
  // =======================================================================================
  
  class LocatedText::Reader {
  public:
    typedef LocatedText Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasValue() const;
    inline  ::capnp::Text::Reader getValue() const;
  
    inline  ::uint32_t getStartByte() const;
  
    inline  ::uint32_t getEndByte() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class LocatedText::Builder {
  public:
    typedef LocatedText Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasValue();
    inline  ::capnp::Text::Builder getValue();
    inline void setValue( ::capnp::Text::Reader value);
    inline  ::capnp::Text::Builder initValue(unsigned int size);
    inline void adoptValue(::capnp::Orphan< ::capnp::Text>&& value);
    inline ::capnp::Orphan< ::capnp::Text> disownValue();
  
    inline  ::uint32_t getStartByte();
    inline void setStartByte( ::uint32_t value);
  
    inline  ::uint32_t getEndByte();
    inline void setEndByte( ::uint32_t value);
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class LocatedText::Pipeline {
  public:
    typedef LocatedText Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class LocatedInteger::Reader {
  public:
    typedef LocatedInteger Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline  ::uint64_t getValue() const;
  
    inline  ::uint32_t getStartByte() const;
  
    inline  ::uint32_t getEndByte() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class LocatedInteger::Builder {
  public:
    typedef LocatedInteger Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline  ::uint64_t getValue();
    inline void setValue( ::uint64_t value);
  
    inline  ::uint32_t getStartByte();
    inline void setStartByte( ::uint32_t value);
  
    inline  ::uint32_t getEndByte();
    inline void setEndByte( ::uint32_t value);
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class LocatedInteger::Pipeline {
  public:
    typedef LocatedInteger Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class LocatedFloat::Reader {
  public:
    typedef LocatedFloat Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline double getValue() const;
  
    inline  ::uint32_t getStartByte() const;
  
    inline  ::uint32_t getEndByte() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class LocatedFloat::Builder {
  public:
    typedef LocatedFloat Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline double getValue();
    inline void setValue(double value);
  
    inline  ::uint32_t getStartByte();
    inline void setStartByte( ::uint32_t value);
  
    inline  ::uint32_t getEndByte();
    inline void setEndByte( ::uint32_t value);
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class LocatedFloat::Pipeline {
  public:
    typedef LocatedFloat Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Expression::Reader {
  public:
    typedef Expression Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool isUnknown() const;
    inline  ::capnp::Void getUnknown() const;
  
    inline bool isPositiveInt() const;
    inline  ::uint64_t getPositiveInt() const;
  
    inline bool isNegativeInt() const;
    inline  ::uint64_t getNegativeInt() const;
  
    inline bool isFloat() const;
    inline double getFloat() const;
  
    inline bool isString() const;
    inline bool hasString() const;
    inline  ::capnp::Text::Reader getString() const;
  
    inline bool isRelativeName() const;
    inline bool hasRelativeName() const;
    inline  ::capnp::compiler::LocatedText::Reader getRelativeName() const;
  
    inline bool isList() const;
    inline bool hasList() const;
    inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Reader getList() const;
  
    inline bool isTuple() const;
    inline bool hasTuple() const;
    inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Reader getTuple() const;
  
    inline  ::uint32_t getStartByte() const;
  
    inline  ::uint32_t getEndByte() const;
  
    inline bool isBinary() const;
    inline bool hasBinary() const;
    inline  ::capnp::Data::Reader getBinary() const;
  
    inline bool isApplication() const;
    inline typename Application::Reader getApplication() const;
  
    inline bool isMember() const;
    inline typename Member::Reader getMember() const;
  
    inline bool isAbsoluteName() const;
    inline bool hasAbsoluteName() const;
    inline  ::capnp::compiler::LocatedText::Reader getAbsoluteName() const;
  
    inline bool isImport() const;
    inline bool hasImport() const;
    inline  ::capnp::compiler::LocatedText::Reader getImport() const;
  
    inline bool isEmbed() const;
    inline bool hasEmbed() const;
    inline  ::capnp::compiler::LocatedText::Reader getEmbed() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Expression::Builder {
  public:
    typedef Expression Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool isUnknown();
    inline  ::capnp::Void getUnknown();
    inline void setUnknown( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isPositiveInt();
    inline  ::uint64_t getPositiveInt();
    inline void setPositiveInt( ::uint64_t value);
  
    inline bool isNegativeInt();
    inline  ::uint64_t getNegativeInt();
    inline void setNegativeInt( ::uint64_t value);
  
    inline bool isFloat();
    inline double getFloat();
    inline void setFloat(double value);
  
    inline bool isString();
    inline bool hasString();
    inline  ::capnp::Text::Builder getString();
    inline void setString( ::capnp::Text::Reader value);
    inline  ::capnp::Text::Builder initString(unsigned int size);
    inline void adoptString(::capnp::Orphan< ::capnp::Text>&& value);
    inline ::capnp::Orphan< ::capnp::Text> disownString();
  
    inline bool isRelativeName();
    inline bool hasRelativeName();
    inline  ::capnp::compiler::LocatedText::Builder getRelativeName();
    inline void setRelativeName( ::capnp::compiler::LocatedText::Reader value);
    inline  ::capnp::compiler::LocatedText::Builder initRelativeName();
    inline void adoptRelativeName(::capnp::Orphan< ::capnp::compiler::LocatedText>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedText> disownRelativeName();
  
    inline bool isList();
    inline bool hasList();
    inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Builder getList();
    inline void setList( ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Builder initList(unsigned int size);
    inline void adoptList(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>> disownList();
  
    inline bool isTuple();
    inline bool hasTuple();
    inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Builder getTuple();
    inline void setTuple( ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Builder initTuple(unsigned int size);
    inline void adoptTuple(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>> disownTuple();
  
    inline  ::uint32_t getStartByte();
    inline void setStartByte( ::uint32_t value);
  
    inline  ::uint32_t getEndByte();
    inline void setEndByte( ::uint32_t value);
  
    inline bool isBinary();
    inline bool hasBinary();
    inline  ::capnp::Data::Builder getBinary();
    inline void setBinary( ::capnp::Data::Reader value);
    inline  ::capnp::Data::Builder initBinary(unsigned int size);
    inline void adoptBinary(::capnp::Orphan< ::capnp::Data>&& value);
    inline ::capnp::Orphan< ::capnp::Data> disownBinary();
  
    inline bool isApplication();
    inline typename Application::Builder getApplication();
    inline typename Application::Builder initApplication();
  
    inline bool isMember();
    inline typename Member::Builder getMember();
    inline typename Member::Builder initMember();
  
    inline bool isAbsoluteName();
    inline bool hasAbsoluteName();
    inline  ::capnp::compiler::LocatedText::Builder getAbsoluteName();
    inline void setAbsoluteName( ::capnp::compiler::LocatedText::Reader value);
    inline  ::capnp::compiler::LocatedText::Builder initAbsoluteName();
    inline void adoptAbsoluteName(::capnp::Orphan< ::capnp::compiler::LocatedText>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedText> disownAbsoluteName();
  
    inline bool isImport();
    inline bool hasImport();
    inline  ::capnp::compiler::LocatedText::Builder getImport();
    inline void setImport( ::capnp::compiler::LocatedText::Reader value);
    inline  ::capnp::compiler::LocatedText::Builder initImport();
    inline void adoptImport(::capnp::Orphan< ::capnp::compiler::LocatedText>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedText> disownImport();
  
    inline bool isEmbed();
    inline bool hasEmbed();
    inline  ::capnp::compiler::LocatedText::Builder getEmbed();
    inline void setEmbed( ::capnp::compiler::LocatedText::Reader value);
    inline  ::capnp::compiler::LocatedText::Builder initEmbed();
    inline void adoptEmbed(::capnp::Orphan< ::capnp::compiler::LocatedText>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedText> disownEmbed();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Expression::Pipeline {
  public:
    typedef Expression Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Expression::Param::Reader {
  public:
    typedef Param Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool isUnnamed() const;
    inline  ::capnp::Void getUnnamed() const;
  
    inline bool isNamed() const;
    inline bool hasNamed() const;
    inline  ::capnp::compiler::LocatedText::Reader getNamed() const;
  
    inline bool hasValue() const;
    inline  ::capnp::compiler::Expression::Reader getValue() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Expression::Param::Builder {
  public:
    typedef Param Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool isUnnamed();
    inline  ::capnp::Void getUnnamed();
    inline void setUnnamed( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isNamed();
    inline bool hasNamed();
    inline  ::capnp::compiler::LocatedText::Builder getNamed();
    inline void setNamed( ::capnp::compiler::LocatedText::Reader value);
    inline  ::capnp::compiler::LocatedText::Builder initNamed();
    inline void adoptNamed(::capnp::Orphan< ::capnp::compiler::LocatedText>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedText> disownNamed();
  
    inline bool hasValue();
    inline  ::capnp::compiler::Expression::Builder getValue();
    inline void setValue( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initValue();
    inline void adoptValue(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownValue();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Expression::Param::Pipeline {
  public:
    typedef Param Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Expression::Pipeline getValue();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Expression::Application::Reader {
  public:
    typedef Application Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasFunction() const;
    inline  ::capnp::compiler::Expression::Reader getFunction() const;
  
    inline bool hasParams() const;
    inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Reader getParams() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Expression::Application::Builder {
  public:
    typedef Application Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasFunction();
    inline  ::capnp::compiler::Expression::Builder getFunction();
    inline void setFunction( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initFunction();
    inline void adoptFunction(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownFunction();
  
    inline bool hasParams();
    inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Builder getParams();
    inline void setParams( ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Builder initParams(unsigned int size);
    inline void adoptParams(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>> disownParams();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Expression::Application::Pipeline {
  public:
    typedef Application Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Expression::Pipeline getFunction();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Expression::Member::Reader {
  public:
    typedef Member Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasParent() const;
    inline  ::capnp::compiler::Expression::Reader getParent() const;
  
    inline bool hasName() const;
    inline  ::capnp::compiler::LocatedText::Reader getName() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Expression::Member::Builder {
  public:
    typedef Member Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasParent();
    inline  ::capnp::compiler::Expression::Builder getParent();
    inline void setParent( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initParent();
    inline void adoptParent(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownParent();
  
    inline bool hasName();
    inline  ::capnp::compiler::LocatedText::Builder getName();
    inline void setName( ::capnp::compiler::LocatedText::Reader value);
    inline  ::capnp::compiler::LocatedText::Builder initName();
    inline void adoptName(::capnp::Orphan< ::capnp::compiler::LocatedText>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedText> disownName();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Expression::Member::Pipeline {
  public:
    typedef Member Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Expression::Pipeline getParent();
    inline  ::capnp::compiler::LocatedText::Pipeline getName();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Reader {
  public:
    typedef Declaration Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool hasName() const;
    inline  ::capnp::compiler::LocatedText::Reader getName() const;
  
    inline typename Id::Reader getId() const;
  
    inline bool hasNestedDecls() const;
    inline  ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>::Reader getNestedDecls() const;
  
    inline bool hasAnnotations() const;
    inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Reader getAnnotations() const;
  
    inline  ::uint32_t getStartByte() const;
  
    inline  ::uint32_t getEndByte() const;
  
    inline bool hasDocComment() const;
    inline  ::capnp::Text::Reader getDocComment() const;
  
    inline bool isFile() const;
    inline  ::capnp::Void getFile() const;
  
    inline bool isUsing() const;
    inline typename Using::Reader getUsing() const;
  
    inline bool isConst() const;
    inline typename Const::Reader getConst() const;
  
    inline bool isEnum() const;
    inline  ::capnp::Void getEnum() const;
  
    inline bool isEnumerant() const;
    inline  ::capnp::Void getEnumerant() const;
  
    inline bool isStruct() const;
    inline  ::capnp::Void getStruct() const;
  
    inline bool isField() const;
    inline typename Field::Reader getField() const;
  
    inline bool isUnion() const;
    inline  ::capnp::Void getUnion() const;
  
    inline bool isGroup() const;
    inline  ::capnp::Void getGroup() const;
  
    inline bool isInterface() const;
    inline typename Interface::Reader getInterface() const;
  
    inline bool isMethod() const;
    inline typename Method::Reader getMethod() const;
  
    inline bool isAnnotation() const;
    inline typename Annotation::Reader getAnnotation() const;
  
    inline bool isNakedId() const;
    inline bool hasNakedId() const;
    inline  ::capnp::compiler::LocatedInteger::Reader getNakedId() const;
  
    inline bool isNakedAnnotation() const;
    inline bool hasNakedAnnotation() const;
    inline  ::capnp::compiler::Declaration::AnnotationApplication::Reader getNakedAnnotation() const;
  
    inline bool isBuiltinVoid() const;
    inline  ::capnp::Void getBuiltinVoid() const;
  
    inline bool isBuiltinBool() const;
    inline  ::capnp::Void getBuiltinBool() const;
  
    inline bool isBuiltinInt8() const;
    inline  ::capnp::Void getBuiltinInt8() const;
  
    inline bool isBuiltinInt16() const;
    inline  ::capnp::Void getBuiltinInt16() const;
  
    inline bool isBuiltinInt32() const;
    inline  ::capnp::Void getBuiltinInt32() const;
  
    inline bool isBuiltinInt64() const;
    inline  ::capnp::Void getBuiltinInt64() const;
  
    inline bool isBuiltinUInt8() const;
    inline  ::capnp::Void getBuiltinUInt8() const;
  
    inline bool isBuiltinUInt16() const;
    inline  ::capnp::Void getBuiltinUInt16() const;
  
    inline bool isBuiltinUInt32() const;
    inline  ::capnp::Void getBuiltinUInt32() const;
  
    inline bool isBuiltinUInt64() const;
    inline  ::capnp::Void getBuiltinUInt64() const;
  
    inline bool isBuiltinFloat32() const;
    inline  ::capnp::Void getBuiltinFloat32() const;
  
    inline bool isBuiltinFloat64() const;
    inline  ::capnp::Void getBuiltinFloat64() const;
  
    inline bool isBuiltinText() const;
    inline  ::capnp::Void getBuiltinText() const;
  
    inline bool isBuiltinData() const;
    inline  ::capnp::Void getBuiltinData() const;
  
    inline bool isBuiltinList() const;
    inline  ::capnp::Void getBuiltinList() const;
  
    inline bool isBuiltinObject() const;
    inline  ::capnp::Void getBuiltinObject() const;
  
    inline bool isBuiltinAnyPointer() const;
    inline  ::capnp::Void getBuiltinAnyPointer() const;
  
    inline bool hasParameters() const;
    inline  ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>::Reader getParameters() const;
  
    inline bool isBuiltinAnyStruct() const;
    inline  ::capnp::Void getBuiltinAnyStruct() const;
  
    inline bool isBuiltinAnyList() const;
    inline  ::capnp::Void getBuiltinAnyList() const;
  
    inline bool isBuiltinCapability() const;
    inline  ::capnp::Void getBuiltinCapability() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Builder {
  public:
    typedef Declaration Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool hasName();
    inline  ::capnp::compiler::LocatedText::Builder getName();
    inline void setName( ::capnp::compiler::LocatedText::Reader value);
    inline  ::capnp::compiler::LocatedText::Builder initName();
    inline void adoptName(::capnp::Orphan< ::capnp::compiler::LocatedText>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedText> disownName();
  
    inline typename Id::Builder getId();
    inline typename Id::Builder initId();
  
    inline bool hasNestedDecls();
    inline  ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>::Builder getNestedDecls();
    inline void setNestedDecls( ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>::Builder initNestedDecls(unsigned int size);
    inline void adoptNestedDecls(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>> disownNestedDecls();
  
    inline bool hasAnnotations();
    inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Builder getAnnotations();
    inline void setAnnotations( ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Builder initAnnotations(unsigned int size);
    inline void adoptAnnotations(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>> disownAnnotations();
  
    inline  ::uint32_t getStartByte();
    inline void setStartByte( ::uint32_t value);
  
    inline  ::uint32_t getEndByte();
    inline void setEndByte( ::uint32_t value);
  
    inline bool hasDocComment();
    inline  ::capnp::Text::Builder getDocComment();
    inline void setDocComment( ::capnp::Text::Reader value);
    inline  ::capnp::Text::Builder initDocComment(unsigned int size);
    inline void adoptDocComment(::capnp::Orphan< ::capnp::Text>&& value);
    inline ::capnp::Orphan< ::capnp::Text> disownDocComment();
  
    inline bool isFile();
    inline  ::capnp::Void getFile();
    inline void setFile( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isUsing();
    inline typename Using::Builder getUsing();
    inline typename Using::Builder initUsing();
  
    inline bool isConst();
    inline typename Const::Builder getConst();
    inline typename Const::Builder initConst();
  
    inline bool isEnum();
    inline  ::capnp::Void getEnum();
    inline void setEnum( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isEnumerant();
    inline  ::capnp::Void getEnumerant();
    inline void setEnumerant( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isStruct();
    inline  ::capnp::Void getStruct();
    inline void setStruct( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isField();
    inline typename Field::Builder getField();
    inline typename Field::Builder initField();
  
    inline bool isUnion();
    inline  ::capnp::Void getUnion();
    inline void setUnion( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isGroup();
    inline  ::capnp::Void getGroup();
    inline void setGroup( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isInterface();
    inline typename Interface::Builder getInterface();
    inline typename Interface::Builder initInterface();
  
    inline bool isMethod();
    inline typename Method::Builder getMethod();
    inline typename Method::Builder initMethod();
  
    inline bool isAnnotation();
    inline typename Annotation::Builder getAnnotation();
    inline typename Annotation::Builder initAnnotation();
  
    inline bool isNakedId();
    inline bool hasNakedId();
    inline  ::capnp::compiler::LocatedInteger::Builder getNakedId();
    inline void setNakedId( ::capnp::compiler::LocatedInteger::Reader value);
    inline  ::capnp::compiler::LocatedInteger::Builder initNakedId();
    inline void adoptNakedId(::capnp::Orphan< ::capnp::compiler::LocatedInteger>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedInteger> disownNakedId();
  
    inline bool isNakedAnnotation();
    inline bool hasNakedAnnotation();
    inline  ::capnp::compiler::Declaration::AnnotationApplication::Builder getNakedAnnotation();
    inline void setNakedAnnotation( ::capnp::compiler::Declaration::AnnotationApplication::Reader value);
    inline  ::capnp::compiler::Declaration::AnnotationApplication::Builder initNakedAnnotation();
    inline void adoptNakedAnnotation(::capnp::Orphan< ::capnp::compiler::Declaration::AnnotationApplication>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Declaration::AnnotationApplication> disownNakedAnnotation();
  
    inline bool isBuiltinVoid();
    inline  ::capnp::Void getBuiltinVoid();
    inline void setBuiltinVoid( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinBool();
    inline  ::capnp::Void getBuiltinBool();
    inline void setBuiltinBool( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinInt8();
    inline  ::capnp::Void getBuiltinInt8();
    inline void setBuiltinInt8( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinInt16();
    inline  ::capnp::Void getBuiltinInt16();
    inline void setBuiltinInt16( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinInt32();
    inline  ::capnp::Void getBuiltinInt32();
    inline void setBuiltinInt32( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinInt64();
    inline  ::capnp::Void getBuiltinInt64();
    inline void setBuiltinInt64( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinUInt8();
    inline  ::capnp::Void getBuiltinUInt8();
    inline void setBuiltinUInt8( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinUInt16();
    inline  ::capnp::Void getBuiltinUInt16();
    inline void setBuiltinUInt16( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinUInt32();
    inline  ::capnp::Void getBuiltinUInt32();
    inline void setBuiltinUInt32( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinUInt64();
    inline  ::capnp::Void getBuiltinUInt64();
    inline void setBuiltinUInt64( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinFloat32();
    inline  ::capnp::Void getBuiltinFloat32();
    inline void setBuiltinFloat32( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinFloat64();
    inline  ::capnp::Void getBuiltinFloat64();
    inline void setBuiltinFloat64( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinText();
    inline  ::capnp::Void getBuiltinText();
    inline void setBuiltinText( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinData();
    inline  ::capnp::Void getBuiltinData();
    inline void setBuiltinData( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinList();
    inline  ::capnp::Void getBuiltinList();
    inline void setBuiltinList( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinObject();
    inline  ::capnp::Void getBuiltinObject();
    inline void setBuiltinObject( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinAnyPointer();
    inline  ::capnp::Void getBuiltinAnyPointer();
    inline void setBuiltinAnyPointer( ::capnp::Void value = ::capnp::VOID);
  
    inline bool hasParameters();
    inline  ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>::Builder getParameters();
    inline void setParameters( ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>::Builder initParameters(unsigned int size);
    inline void adoptParameters(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>> disownParameters();
  
    inline bool isBuiltinAnyStruct();
    inline  ::capnp::Void getBuiltinAnyStruct();
    inline void setBuiltinAnyStruct( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinAnyList();
    inline  ::capnp::Void getBuiltinAnyList();
    inline void setBuiltinAnyList( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isBuiltinCapability();
    inline  ::capnp::Void getBuiltinCapability();
    inline void setBuiltinCapability( ::capnp::Void value = ::capnp::VOID);
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Pipeline {
  public:
    typedef Declaration Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::LocatedText::Pipeline getName();
    inline typename Id::Pipeline getId();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::BrandParameter::Reader {
  public:
    typedef BrandParameter Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasName() const;
    inline  ::capnp::Text::Reader getName() const;
  
    inline  ::uint32_t getStartByte() const;
  
    inline  ::uint32_t getEndByte() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::BrandParameter::Builder {
  public:
    typedef BrandParameter Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasName();
    inline  ::capnp::Text::Builder getName();
    inline void setName( ::capnp::Text::Reader value);
    inline  ::capnp::Text::Builder initName(unsigned int size);
    inline void adoptName(::capnp::Orphan< ::capnp::Text>&& value);
    inline ::capnp::Orphan< ::capnp::Text> disownName();
  
    inline  ::uint32_t getStartByte();
    inline void setStartByte( ::uint32_t value);
  
    inline  ::uint32_t getEndByte();
    inline void setEndByte( ::uint32_t value);
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::BrandParameter::Pipeline {
  public:
    typedef BrandParameter Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::AnnotationApplication::Reader {
  public:
    typedef AnnotationApplication Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasName() const;
    inline  ::capnp::compiler::Expression::Reader getName() const;
  
    inline typename Value::Reader getValue() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::AnnotationApplication::Builder {
  public:
    typedef AnnotationApplication Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasName();
    inline  ::capnp::compiler::Expression::Builder getName();
    inline void setName( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initName();
    inline void adoptName(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownName();
  
    inline typename Value::Builder getValue();
    inline typename Value::Builder initValue();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::AnnotationApplication::Pipeline {
  public:
    typedef AnnotationApplication Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Expression::Pipeline getName();
    inline typename Value::Pipeline getValue();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::AnnotationApplication::Value::Reader {
  public:
    typedef Value Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool isNone() const;
    inline  ::capnp::Void getNone() const;
  
    inline bool isExpression() const;
    inline bool hasExpression() const;
    inline  ::capnp::compiler::Expression::Reader getExpression() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::AnnotationApplication::Value::Builder {
  public:
    typedef Value Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool isNone();
    inline  ::capnp::Void getNone();
    inline void setNone( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isExpression();
    inline bool hasExpression();
    inline  ::capnp::compiler::Expression::Builder getExpression();
    inline void setExpression( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initExpression();
    inline void adoptExpression(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownExpression();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::AnnotationApplication::Value::Pipeline {
  public:
    typedef Value Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::ParamList::Reader {
  public:
    typedef ParamList Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool isNamedList() const;
    inline bool hasNamedList() const;
    inline  ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>::Reader getNamedList() const;
  
    inline bool isType() const;
    inline bool hasType() const;
    inline  ::capnp::compiler::Expression::Reader getType() const;
  
    inline  ::uint32_t getStartByte() const;
  
    inline  ::uint32_t getEndByte() const;
  
    inline bool isStream() const;
    inline  ::capnp::Void getStream() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::ParamList::Builder {
  public:
    typedef ParamList Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool isNamedList();
    inline bool hasNamedList();
    inline  ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>::Builder getNamedList();
    inline void setNamedList( ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>::Builder initNamedList(unsigned int size);
    inline void adoptNamedList(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>> disownNamedList();
  
    inline bool isType();
    inline bool hasType();
    inline  ::capnp::compiler::Expression::Builder getType();
    inline void setType( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initType();
    inline void adoptType(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownType();
  
    inline  ::uint32_t getStartByte();
    inline void setStartByte( ::uint32_t value);
  
    inline  ::uint32_t getEndByte();
    inline void setEndByte( ::uint32_t value);
  
    inline bool isStream();
    inline  ::capnp::Void getStream();
    inline void setStream( ::capnp::Void value = ::capnp::VOID);
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::ParamList::Pipeline {
  public:
    typedef ParamList Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Param::Reader {
  public:
    typedef Param Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasName() const;
    inline  ::capnp::compiler::LocatedText::Reader getName() const;
  
    inline bool hasType() const;
    inline  ::capnp::compiler::Expression::Reader getType() const;
  
    inline bool hasAnnotations() const;
    inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Reader getAnnotations() const;
  
    inline typename DefaultValue::Reader getDefaultValue() const;
  
    inline  ::uint32_t getStartByte() const;
  
    inline  ::uint32_t getEndByte() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Param::Builder {
  public:
    typedef Param Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasName();
    inline  ::capnp::compiler::LocatedText::Builder getName();
    inline void setName( ::capnp::compiler::LocatedText::Reader value);
    inline  ::capnp::compiler::LocatedText::Builder initName();
    inline void adoptName(::capnp::Orphan< ::capnp::compiler::LocatedText>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedText> disownName();
  
    inline bool hasType();
    inline  ::capnp::compiler::Expression::Builder getType();
    inline void setType( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initType();
    inline void adoptType(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownType();
  
    inline bool hasAnnotations();
    inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Builder getAnnotations();
    inline void setAnnotations( ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Builder initAnnotations(unsigned int size);
    inline void adoptAnnotations(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>> disownAnnotations();
  
    inline typename DefaultValue::Builder getDefaultValue();
    inline typename DefaultValue::Builder initDefaultValue();
  
    inline  ::uint32_t getStartByte();
    inline void setStartByte( ::uint32_t value);
  
    inline  ::uint32_t getEndByte();
    inline void setEndByte( ::uint32_t value);
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Param::Pipeline {
  public:
    typedef Param Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::LocatedText::Pipeline getName();
    inline  ::capnp::compiler::Expression::Pipeline getType();
    inline typename DefaultValue::Pipeline getDefaultValue();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Param::DefaultValue::Reader {
  public:
    typedef DefaultValue Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool isNone() const;
    inline  ::capnp::Void getNone() const;
  
    inline bool isValue() const;
    inline bool hasValue() const;
    inline  ::capnp::compiler::Expression::Reader getValue() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Param::DefaultValue::Builder {
  public:
    typedef DefaultValue Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool isNone();
    inline  ::capnp::Void getNone();
    inline void setNone( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isValue();
    inline bool hasValue();
    inline  ::capnp::compiler::Expression::Builder getValue();
    inline void setValue( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initValue();
    inline void adoptValue(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownValue();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Param::DefaultValue::Pipeline {
  public:
    typedef DefaultValue Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Id::Reader {
  public:
    typedef Id Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool isUnspecified() const;
    inline  ::capnp::Void getUnspecified() const;
  
    inline bool isUid() const;
    inline bool hasUid() const;
    inline  ::capnp::compiler::LocatedInteger::Reader getUid() const;
  
    inline bool isOrdinal() const;
    inline bool hasOrdinal() const;
    inline  ::capnp::compiler::LocatedInteger::Reader getOrdinal() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Id::Builder {
  public:
    typedef Id Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool isUnspecified();
    inline  ::capnp::Void getUnspecified();
    inline void setUnspecified( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isUid();
    inline bool hasUid();
    inline  ::capnp::compiler::LocatedInteger::Builder getUid();
    inline void setUid( ::capnp::compiler::LocatedInteger::Reader value);
    inline  ::capnp::compiler::LocatedInteger::Builder initUid();
    inline void adoptUid(::capnp::Orphan< ::capnp::compiler::LocatedInteger>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedInteger> disownUid();
  
    inline bool isOrdinal();
    inline bool hasOrdinal();
    inline  ::capnp::compiler::LocatedInteger::Builder getOrdinal();
    inline void setOrdinal( ::capnp::compiler::LocatedInteger::Reader value);
    inline  ::capnp::compiler::LocatedInteger::Builder initOrdinal();
    inline void adoptOrdinal(::capnp::Orphan< ::capnp::compiler::LocatedInteger>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::LocatedInteger> disownOrdinal();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Id::Pipeline {
  public:
    typedef Id Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Using::Reader {
  public:
    typedef Using Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasTarget() const;
    inline  ::capnp::compiler::Expression::Reader getTarget() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Using::Builder {
  public:
    typedef Using Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasTarget();
    inline  ::capnp::compiler::Expression::Builder getTarget();
    inline void setTarget( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initTarget();
    inline void adoptTarget(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownTarget();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Using::Pipeline {
  public:
    typedef Using Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Expression::Pipeline getTarget();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Const::Reader {
  public:
    typedef Const Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasType() const;
    inline  ::capnp::compiler::Expression::Reader getType() const;
  
    inline bool hasValue() const;
    inline  ::capnp::compiler::Expression::Reader getValue() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Const::Builder {
  public:
    typedef Const Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasType();
    inline  ::capnp::compiler::Expression::Builder getType();
    inline void setType( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initType();
    inline void adoptType(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownType();
  
    inline bool hasValue();
    inline  ::capnp::compiler::Expression::Builder getValue();
    inline void setValue( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initValue();
    inline void adoptValue(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownValue();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Const::Pipeline {
  public:
    typedef Const Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Expression::Pipeline getType();
    inline  ::capnp::compiler::Expression::Pipeline getValue();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Field::Reader {
  public:
    typedef Field Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasType() const;
    inline  ::capnp::compiler::Expression::Reader getType() const;
  
    inline typename DefaultValue::Reader getDefaultValue() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Field::Builder {
  public:
    typedef Field Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasType();
    inline  ::capnp::compiler::Expression::Builder getType();
    inline void setType( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initType();
    inline void adoptType(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownType();
  
    inline typename DefaultValue::Builder getDefaultValue();
    inline typename DefaultValue::Builder initDefaultValue();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Field::Pipeline {
  public:
    typedef Field Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Expression::Pipeline getType();
    inline typename DefaultValue::Pipeline getDefaultValue();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Field::DefaultValue::Reader {
  public:
    typedef DefaultValue Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool isNone() const;
    inline  ::capnp::Void getNone() const;
  
    inline bool isValue() const;
    inline bool hasValue() const;
    inline  ::capnp::compiler::Expression::Reader getValue() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Field::DefaultValue::Builder {
  public:
    typedef DefaultValue Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool isNone();
    inline  ::capnp::Void getNone();
    inline void setNone( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isValue();
    inline bool hasValue();
    inline  ::capnp::compiler::Expression::Builder getValue();
    inline void setValue( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initValue();
    inline void adoptValue(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownValue();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Field::DefaultValue::Pipeline {
  public:
    typedef DefaultValue Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Interface::Reader {
  public:
    typedef Interface Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasSuperclasses() const;
    inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Reader getSuperclasses() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Interface::Builder {
  public:
    typedef Interface Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasSuperclasses();
    inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Builder getSuperclasses();
    inline void setSuperclasses( ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Reader value);
    inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Builder initSuperclasses(unsigned int size);
    inline void adoptSuperclasses(::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>&& value);
    inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>> disownSuperclasses();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Interface::Pipeline {
  public:
    typedef Interface Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Method::Reader {
  public:
    typedef Method Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasParams() const;
    inline  ::capnp::compiler::Declaration::ParamList::Reader getParams() const;
  
    inline typename Results::Reader getResults() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Method::Builder {
  public:
    typedef Method Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasParams();
    inline  ::capnp::compiler::Declaration::ParamList::Builder getParams();
    inline void setParams( ::capnp::compiler::Declaration::ParamList::Reader value);
    inline  ::capnp::compiler::Declaration::ParamList::Builder initParams();
    inline void adoptParams(::capnp::Orphan< ::capnp::compiler::Declaration::ParamList>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Declaration::ParamList> disownParams();
  
    inline typename Results::Builder getResults();
    inline typename Results::Builder initResults();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Method::Pipeline {
  public:
    typedef Method Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Declaration::ParamList::Pipeline getParams();
    inline typename Results::Pipeline getResults();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Method::Results::Reader {
  public:
    typedef Results Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline Which which() const;
    inline bool isNone() const;
    inline  ::capnp::Void getNone() const;
  
    inline bool isExplicit() const;
    inline bool hasExplicit() const;
    inline  ::capnp::compiler::Declaration::ParamList::Reader getExplicit() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Method::Results::Builder {
  public:
    typedef Results Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline Which which();
    inline bool isNone();
    inline  ::capnp::Void getNone();
    inline void setNone( ::capnp::Void value = ::capnp::VOID);
  
    inline bool isExplicit();
    inline bool hasExplicit();
    inline  ::capnp::compiler::Declaration::ParamList::Builder getExplicit();
    inline void setExplicit( ::capnp::compiler::Declaration::ParamList::Reader value);
    inline  ::capnp::compiler::Declaration::ParamList::Builder initExplicit();
    inline void adoptExplicit(::capnp::Orphan< ::capnp::compiler::Declaration::ParamList>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Declaration::ParamList> disownExplicit();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Method::Results::Pipeline {
  public:
    typedef Results Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class Declaration::Annotation::Reader {
  public:
    typedef Annotation Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasType() const;
    inline  ::capnp::compiler::Expression::Reader getType() const;
  
    inline bool getTargetsFile() const;
  
    inline bool getTargetsConst() const;
  
    inline bool getTargetsEnum() const;
  
    inline bool getTargetsEnumerant() const;
  
    inline bool getTargetsStruct() const;
  
    inline bool getTargetsField() const;
  
    inline bool getTargetsUnion() const;
  
    inline bool getTargetsGroup() const;
  
    inline bool getTargetsInterface() const;
  
    inline bool getTargetsMethod() const;
  
    inline bool getTargetsParam() const;
  
    inline bool getTargetsAnnotation() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class Declaration::Annotation::Builder {
  public:
    typedef Annotation Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasType();
    inline  ::capnp::compiler::Expression::Builder getType();
    inline void setType( ::capnp::compiler::Expression::Reader value);
    inline  ::capnp::compiler::Expression::Builder initType();
    inline void adoptType(::capnp::Orphan< ::capnp::compiler::Expression>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Expression> disownType();
  
    inline bool getTargetsFile();
    inline void setTargetsFile(bool value);
  
    inline bool getTargetsConst();
    inline void setTargetsConst(bool value);
  
    inline bool getTargetsEnum();
    inline void setTargetsEnum(bool value);
  
    inline bool getTargetsEnumerant();
    inline void setTargetsEnumerant(bool value);
  
    inline bool getTargetsStruct();
    inline void setTargetsStruct(bool value);
  
    inline bool getTargetsField();
    inline void setTargetsField(bool value);
  
    inline bool getTargetsUnion();
    inline void setTargetsUnion(bool value);
  
    inline bool getTargetsGroup();
    inline void setTargetsGroup(bool value);
  
    inline bool getTargetsInterface();
    inline void setTargetsInterface(bool value);
  
    inline bool getTargetsMethod();
    inline void setTargetsMethod(bool value);
  
    inline bool getTargetsParam();
    inline void setTargetsParam(bool value);
  
    inline bool getTargetsAnnotation();
    inline void setTargetsAnnotation(bool value);
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class Declaration::Annotation::Pipeline {
  public:
    typedef Annotation Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Expression::Pipeline getType();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  class ParsedFile::Reader {
  public:
    typedef ParsedFile Reads;
  
    Reader() = default;
    inline explicit Reader(::capnp::_::StructReader base): _reader(base) {}
  
    inline ::capnp::MessageSize totalSize() const {
      return _reader.totalSize().asPublic();
    }
  
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const {
      return ::capnp::_::structString(_reader, *_capnpPrivate::brand());
    }
  #endif  // !CAPNP_LITE
  
    inline bool hasRoot() const;
    inline  ::capnp::compiler::Declaration::Reader getRoot() const;
  
  private:
    ::capnp::_::StructReader _reader;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::List;
    friend class ::capnp::MessageBuilder;
    friend class ::capnp::Orphanage;
  };
  
  class ParsedFile::Builder {
  public:
    typedef ParsedFile Builds;
  
    Builder() = delete;  // Deleted to discourage incorrect usage.
                         // You can explicitly initialize to nullptr instead.
    inline Builder(decltype(nullptr)) {}
    inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {}
    inline operator Reader() const { return Reader(_builder.asReader()); }
    inline Reader asReader() const { return *this; }
  
    inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); }
  #if !CAPNP_LITE
    inline ::kj::StringTree toString() const { return asReader().toString(); }
  #endif  // !CAPNP_LITE
  
    inline bool hasRoot();
    inline  ::capnp::compiler::Declaration::Builder getRoot();
    inline void setRoot( ::capnp::compiler::Declaration::Reader value);
    inline  ::capnp::compiler::Declaration::Builder initRoot();
    inline void adoptRoot(::capnp::Orphan< ::capnp::compiler::Declaration>&& value);
    inline ::capnp::Orphan< ::capnp::compiler::Declaration> disownRoot();
  
  private:
    ::capnp::_::StructBuilder _builder;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
    friend class ::capnp::Orphanage;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::_::PointerHelpers;
  };
  
  #if !CAPNP_LITE
  class ParsedFile::Pipeline {
  public:
    typedef ParsedFile Pipelines;
  
    inline Pipeline(decltype(nullptr)): _typeless(nullptr) {}
    inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless)
        : _typeless(kj::mv(typeless)) {}
  
    inline  ::capnp::compiler::Declaration::Pipeline getRoot();
  private:
    ::capnp::AnyPointer::Pipeline _typeless;
    friend class ::capnp::PipelineHook;
    template <typename, ::capnp::Kind>
    friend struct ::capnp::ToDynamic_;
  };
  #endif  // !CAPNP_LITE
  
  // =======================================================================================
  
  inline bool LocatedText::Reader::hasValue() const {
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool LocatedText::Builder::hasValue() {
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::Text::Reader LocatedText::Reader::getValue() const {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::Text::Builder LocatedText::Builder::getValue() {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void LocatedText::Builder::setValue( ::capnp::Text::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::Text::Builder LocatedText::Builder::initValue(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), size);
  }
  inline void LocatedText::Builder::adoptValue(
      ::capnp::Orphan< ::capnp::Text>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::Text> LocatedText::Builder::disownValue() {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline  ::uint32_t LocatedText::Reader::getStartByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t LocatedText::Builder::getStartByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void LocatedText::Builder::setStartByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t LocatedText::Reader::getEndByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t LocatedText::Builder::getEndByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void LocatedText::Builder::setEndByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint64_t LocatedInteger::Reader::getValue() const {
    return _reader.getDataField< ::uint64_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint64_t LocatedInteger::Builder::getValue() {
    return _builder.getDataField< ::uint64_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void LocatedInteger::Builder::setValue( ::uint64_t value) {
    _builder.setDataField< ::uint64_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t LocatedInteger::Reader::getStartByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t LocatedInteger::Builder::getStartByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  inline void LocatedInteger::Builder::setStartByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t LocatedInteger::Reader::getEndByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<3>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t LocatedInteger::Builder::getEndByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<3>() * ::capnp::ELEMENTS);
  }
  inline void LocatedInteger::Builder::setEndByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<3>() * ::capnp::ELEMENTS, value);
  }
  
  inline double LocatedFloat::Reader::getValue() const {
    return _reader.getDataField<double>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline double LocatedFloat::Builder::getValue() {
    return _builder.getDataField<double>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void LocatedFloat::Builder::setValue(double value) {
    _builder.setDataField<double>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t LocatedFloat::Reader::getStartByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t LocatedFloat::Builder::getStartByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  inline void LocatedFloat::Builder::setStartByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t LocatedFloat::Reader::getEndByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<3>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t LocatedFloat::Builder::getEndByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<3>() * ::capnp::ELEMENTS);
  }
  inline void LocatedFloat::Builder::setEndByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<3>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::capnp::compiler::Expression::Which Expression::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Expression::Which Expression::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline bool Expression::Reader::isUnknown() const {
    return which() == Expression::UNKNOWN;
  }
  inline bool Expression::Builder::isUnknown() {
    return which() == Expression::UNKNOWN;
  }
  inline  ::capnp::Void Expression::Reader::getUnknown() const {
    KJ_IREQUIRE((which() == Expression::UNKNOWN),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Expression::Builder::getUnknown() {
    KJ_IREQUIRE((which() == Expression::UNKNOWN),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Expression::Builder::setUnknown( ::capnp::Void value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::UNKNOWN);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Expression::Reader::isPositiveInt() const {
    return which() == Expression::POSITIVE_INT;
  }
  inline bool Expression::Builder::isPositiveInt() {
    return which() == Expression::POSITIVE_INT;
  }
  inline  ::uint64_t Expression::Reader::getPositiveInt() const {
    KJ_IREQUIRE((which() == Expression::POSITIVE_INT),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::uint64_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint64_t Expression::Builder::getPositiveInt() {
    KJ_IREQUIRE((which() == Expression::POSITIVE_INT),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::uint64_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void Expression::Builder::setPositiveInt( ::uint64_t value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::POSITIVE_INT);
    _builder.setDataField< ::uint64_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Expression::Reader::isNegativeInt() const {
    return which() == Expression::NEGATIVE_INT;
  }
  inline bool Expression::Builder::isNegativeInt() {
    return which() == Expression::NEGATIVE_INT;
  }
  inline  ::uint64_t Expression::Reader::getNegativeInt() const {
    KJ_IREQUIRE((which() == Expression::NEGATIVE_INT),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::uint64_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint64_t Expression::Builder::getNegativeInt() {
    KJ_IREQUIRE((which() == Expression::NEGATIVE_INT),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::uint64_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void Expression::Builder::setNegativeInt( ::uint64_t value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::NEGATIVE_INT);
    _builder.setDataField< ::uint64_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Expression::Reader::isFloat() const {
    return which() == Expression::FLOAT;
  }
  inline bool Expression::Builder::isFloat() {
    return which() == Expression::FLOAT;
  }
  inline double Expression::Reader::getFloat() const {
    KJ_IREQUIRE((which() == Expression::FLOAT),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField<double>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline double Expression::Builder::getFloat() {
    KJ_IREQUIRE((which() == Expression::FLOAT),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField<double>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void Expression::Builder::setFloat(double value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::FLOAT);
    _builder.setDataField<double>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Expression::Reader::isString() const {
    return which() == Expression::STRING;
  }
  inline bool Expression::Builder::isString() {
    return which() == Expression::STRING;
  }
  inline bool Expression::Reader::hasString() const {
    if (which() != Expression::STRING) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Builder::hasString() {
    if (which() != Expression::STRING) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::Text::Reader Expression::Reader::getString() const {
    KJ_IREQUIRE((which() == Expression::STRING),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::Text::Builder Expression::Builder::getString() {
    KJ_IREQUIRE((which() == Expression::STRING),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::setString( ::capnp::Text::Reader value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::STRING);
    ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::Text::Builder Expression::Builder::initString(unsigned int size) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::STRING);
    return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), size);
  }
  inline void Expression::Builder::adoptString(
      ::capnp::Orphan< ::capnp::Text>&& value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::STRING);
    ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::Text> Expression::Builder::disownString() {
    KJ_IREQUIRE((which() == Expression::STRING),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Reader::isRelativeName() const {
    return which() == Expression::RELATIVE_NAME;
  }
  inline bool Expression::Builder::isRelativeName() {
    return which() == Expression::RELATIVE_NAME;
  }
  inline bool Expression::Reader::hasRelativeName() const {
    if (which() != Expression::RELATIVE_NAME) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Builder::hasRelativeName() {
    if (which() != Expression::RELATIVE_NAME) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedText::Reader Expression::Reader::getRelativeName() const {
    KJ_IREQUIRE((which() == Expression::RELATIVE_NAME),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Builder::getRelativeName() {
    KJ_IREQUIRE((which() == Expression::RELATIVE_NAME),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::setRelativeName( ::capnp::compiler::LocatedText::Reader value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::RELATIVE_NAME);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Builder::initRelativeName() {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::RELATIVE_NAME);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::adoptRelativeName(
      ::capnp::Orphan< ::capnp::compiler::LocatedText>&& value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::RELATIVE_NAME);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedText> Expression::Builder::disownRelativeName() {
    KJ_IREQUIRE((which() == Expression::RELATIVE_NAME),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Reader::isList() const {
    return which() == Expression::LIST;
  }
  inline bool Expression::Builder::isList() {
    return which() == Expression::LIST;
  }
  inline bool Expression::Reader::hasList() const {
    if (which() != Expression::LIST) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Builder::hasList() {
    if (which() != Expression::LIST) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Reader Expression::Reader::getList() const {
    KJ_IREQUIRE((which() == Expression::LIST),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Builder Expression::Builder::getList() {
    KJ_IREQUIRE((which() == Expression::LIST),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::setList( ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Reader value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::LIST);
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Builder Expression::Builder::initList(unsigned int size) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::LIST);
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), size);
  }
  inline void Expression::Builder::adoptList(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>&& value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::LIST);
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>> Expression::Builder::disownList() {
    KJ_IREQUIRE((which() == Expression::LIST),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Reader::isTuple() const {
    return which() == Expression::TUPLE;
  }
  inline bool Expression::Builder::isTuple() {
    return which() == Expression::TUPLE;
  }
  inline bool Expression::Reader::hasTuple() const {
    if (which() != Expression::TUPLE) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Builder::hasTuple() {
    if (which() != Expression::TUPLE) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Reader Expression::Reader::getTuple() const {
    KJ_IREQUIRE((which() == Expression::TUPLE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Builder Expression::Builder::getTuple() {
    KJ_IREQUIRE((which() == Expression::TUPLE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::setTuple( ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Reader value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::TUPLE);
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Builder Expression::Builder::initTuple(unsigned int size) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::TUPLE);
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), size);
  }
  inline void Expression::Builder::adoptTuple(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>&& value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::TUPLE);
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>> Expression::Builder::disownTuple() {
    KJ_IREQUIRE((which() == Expression::TUPLE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline  ::uint32_t Expression::Reader::getStartByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Expression::Builder::getStartByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void Expression::Builder::setStartByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t Expression::Reader::getEndByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<4>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Expression::Builder::getEndByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<4>() * ::capnp::ELEMENTS);
  }
  inline void Expression::Builder::setEndByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<4>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Expression::Reader::isBinary() const {
    return which() == Expression::BINARY;
  }
  inline bool Expression::Builder::isBinary() {
    return which() == Expression::BINARY;
  }
  inline bool Expression::Reader::hasBinary() const {
    if (which() != Expression::BINARY) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Builder::hasBinary() {
    if (which() != Expression::BINARY) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::Data::Reader Expression::Reader::getBinary() const {
    KJ_IREQUIRE((which() == Expression::BINARY),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::Data>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::Data::Builder Expression::Builder::getBinary() {
    KJ_IREQUIRE((which() == Expression::BINARY),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::Data>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::setBinary( ::capnp::Data::Reader value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::BINARY);
    ::capnp::_::PointerHelpers< ::capnp::Data>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::Data::Builder Expression::Builder::initBinary(unsigned int size) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::BINARY);
    return ::capnp::_::PointerHelpers< ::capnp::Data>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), size);
  }
  inline void Expression::Builder::adoptBinary(
      ::capnp::Orphan< ::capnp::Data>&& value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::BINARY);
    ::capnp::_::PointerHelpers< ::capnp::Data>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::Data> Expression::Builder::disownBinary() {
    KJ_IREQUIRE((which() == Expression::BINARY),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::Data>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Reader::isApplication() const {
    return which() == Expression::APPLICATION;
  }
  inline bool Expression::Builder::isApplication() {
    return which() == Expression::APPLICATION;
  }
  inline typename Expression::Application::Reader Expression::Reader::getApplication() const {
    KJ_IREQUIRE((which() == Expression::APPLICATION),
                "Must check which() before get()ing a union member.");
    return typename Expression::Application::Reader(_reader);
  }
  inline typename Expression::Application::Builder Expression::Builder::getApplication() {
    KJ_IREQUIRE((which() == Expression::APPLICATION),
                "Must check which() before get()ing a union member.");
    return typename Expression::Application::Builder(_builder);
  }
  inline typename Expression::Application::Builder Expression::Builder::initApplication() {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::APPLICATION);
    _builder.getPointerField(::capnp::bounded<0>() * ::capnp::POINTERS).clear();
    _builder.getPointerField(::capnp::bounded<1>() * ::capnp::POINTERS).clear();
    return typename Expression::Application::Builder(_builder);
  }
  inline bool Expression::Reader::isMember() const {
    return which() == Expression::MEMBER;
  }
  inline bool Expression::Builder::isMember() {
    return which() == Expression::MEMBER;
  }
  inline typename Expression::Member::Reader Expression::Reader::getMember() const {
    KJ_IREQUIRE((which() == Expression::MEMBER),
                "Must check which() before get()ing a union member.");
    return typename Expression::Member::Reader(_reader);
  }
  inline typename Expression::Member::Builder Expression::Builder::getMember() {
    KJ_IREQUIRE((which() == Expression::MEMBER),
                "Must check which() before get()ing a union member.");
    return typename Expression::Member::Builder(_builder);
  }
  inline typename Expression::Member::Builder Expression::Builder::initMember() {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::MEMBER);
    _builder.getPointerField(::capnp::bounded<0>() * ::capnp::POINTERS).clear();
    _builder.getPointerField(::capnp::bounded<1>() * ::capnp::POINTERS).clear();
    return typename Expression::Member::Builder(_builder);
  }
  inline bool Expression::Reader::isAbsoluteName() const {
    return which() == Expression::ABSOLUTE_NAME;
  }
  inline bool Expression::Builder::isAbsoluteName() {
    return which() == Expression::ABSOLUTE_NAME;
  }
  inline bool Expression::Reader::hasAbsoluteName() const {
    if (which() != Expression::ABSOLUTE_NAME) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Builder::hasAbsoluteName() {
    if (which() != Expression::ABSOLUTE_NAME) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedText::Reader Expression::Reader::getAbsoluteName() const {
    KJ_IREQUIRE((which() == Expression::ABSOLUTE_NAME),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Builder::getAbsoluteName() {
    KJ_IREQUIRE((which() == Expression::ABSOLUTE_NAME),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::setAbsoluteName( ::capnp::compiler::LocatedText::Reader value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::ABSOLUTE_NAME);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Builder::initAbsoluteName() {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::ABSOLUTE_NAME);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::adoptAbsoluteName(
      ::capnp::Orphan< ::capnp::compiler::LocatedText>&& value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::ABSOLUTE_NAME);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedText> Expression::Builder::disownAbsoluteName() {
    KJ_IREQUIRE((which() == Expression::ABSOLUTE_NAME),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Reader::isImport() const {
    return which() == Expression::IMPORT;
  }
  inline bool Expression::Builder::isImport() {
    return which() == Expression::IMPORT;
  }
  inline bool Expression::Reader::hasImport() const {
    if (which() != Expression::IMPORT) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Builder::hasImport() {
    if (which() != Expression::IMPORT) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedText::Reader Expression::Reader::getImport() const {
    KJ_IREQUIRE((which() == Expression::IMPORT),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Builder::getImport() {
    KJ_IREQUIRE((which() == Expression::IMPORT),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::setImport( ::capnp::compiler::LocatedText::Reader value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::IMPORT);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Builder::initImport() {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::IMPORT);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::adoptImport(
      ::capnp::Orphan< ::capnp::compiler::LocatedText>&& value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::IMPORT);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedText> Expression::Builder::disownImport() {
    KJ_IREQUIRE((which() == Expression::IMPORT),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Reader::isEmbed() const {
    return which() == Expression::EMBED;
  }
  inline bool Expression::Builder::isEmbed() {
    return which() == Expression::EMBED;
  }
  inline bool Expression::Reader::hasEmbed() const {
    if (which() != Expression::EMBED) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Builder::hasEmbed() {
    if (which() != Expression::EMBED) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedText::Reader Expression::Reader::getEmbed() const {
    KJ_IREQUIRE((which() == Expression::EMBED),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Builder::getEmbed() {
    KJ_IREQUIRE((which() == Expression::EMBED),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::setEmbed( ::capnp::compiler::LocatedText::Reader value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::EMBED);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Builder::initEmbed() {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::EMBED);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Builder::adoptEmbed(
      ::capnp::Orphan< ::capnp::compiler::LocatedText>&& value) {
    _builder.setDataField<Expression::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::EMBED);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedText> Expression::Builder::disownEmbed() {
    KJ_IREQUIRE((which() == Expression::EMBED),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline  ::capnp::compiler::Expression::Param::Which Expression::Param::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Expression::Param::Which Expression::Param::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline bool Expression::Param::Reader::isUnnamed() const {
    return which() == Expression::Param::UNNAMED;
  }
  inline bool Expression::Param::Builder::isUnnamed() {
    return which() == Expression::Param::UNNAMED;
  }
  inline  ::capnp::Void Expression::Param::Reader::getUnnamed() const {
    KJ_IREQUIRE((which() == Expression::Param::UNNAMED),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Expression::Param::Builder::getUnnamed() {
    KJ_IREQUIRE((which() == Expression::Param::UNNAMED),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Expression::Param::Builder::setUnnamed( ::capnp::Void value) {
    _builder.setDataField<Expression::Param::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::Param::UNNAMED);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Expression::Param::Reader::isNamed() const {
    return which() == Expression::Param::NAMED;
  }
  inline bool Expression::Param::Builder::isNamed() {
    return which() == Expression::Param::NAMED;
  }
  inline bool Expression::Param::Reader::hasNamed() const {
    if (which() != Expression::Param::NAMED) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Param::Builder::hasNamed() {
    if (which() != Expression::Param::NAMED) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedText::Reader Expression::Param::Reader::getNamed() const {
    KJ_IREQUIRE((which() == Expression::Param::NAMED),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Param::Builder::getNamed() {
    KJ_IREQUIRE((which() == Expression::Param::NAMED),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Param::Builder::setNamed( ::capnp::compiler::LocatedText::Reader value) {
    _builder.setDataField<Expression::Param::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::Param::NAMED);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Param::Builder::initNamed() {
    _builder.setDataField<Expression::Param::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::Param::NAMED);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Param::Builder::adoptNamed(
      ::capnp::Orphan< ::capnp::compiler::LocatedText>&& value) {
    _builder.setDataField<Expression::Param::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Expression::Param::NAMED);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedText> Expression::Param::Builder::disownNamed() {
    KJ_IREQUIRE((which() == Expression::Param::NAMED),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Param::Reader::hasValue() const {
    return !_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Param::Builder::hasValue() {
    return !_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Expression::Param::Reader::getValue() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Expression::Param::Builder::getValue() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Expression::Param::Pipeline::getValue() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(1));
  }
  #endif  // !CAPNP_LITE
  inline void Expression::Param::Builder::setValue( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Expression::Param::Builder::initValue() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Expression::Param::Builder::adoptValue(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Expression::Param::Builder::disownValue() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Application::Reader::hasFunction() const {
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Application::Builder::hasFunction() {
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Expression::Application::Reader::getFunction() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Expression::Application::Builder::getFunction() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Expression::Application::Pipeline::getFunction() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(0));
  }
  #endif  // !CAPNP_LITE
  inline void Expression::Application::Builder::setFunction( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Expression::Application::Builder::initFunction() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Application::Builder::adoptFunction(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Expression::Application::Builder::disownFunction() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Application::Reader::hasParams() const {
    return !_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Application::Builder::hasParams() {
    return !_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Reader Expression::Application::Reader::getParams() const {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Builder Expression::Application::Builder::getParams() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Expression::Application::Builder::setParams( ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>::Builder Expression::Application::Builder::initParams(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), size);
  }
  inline void Expression::Application::Builder::adoptParams(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>> Expression::Application::Builder::disownParams() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression::Param,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Member::Reader::hasParent() const {
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Member::Builder::hasParent() {
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Expression::Member::Reader::getParent() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Expression::Member::Builder::getParent() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Expression::Member::Pipeline::getParent() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(0));
  }
  #endif  // !CAPNP_LITE
  inline void Expression::Member::Builder::setParent( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Expression::Member::Builder::initParent() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Expression::Member::Builder::adoptParent(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Expression::Member::Builder::disownParent() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Expression::Member::Reader::hasName() const {
    return !_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline bool Expression::Member::Builder::hasName() {
    return !_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedText::Reader Expression::Member::Reader::getName() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Member::Builder::getName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::LocatedText::Pipeline Expression::Member::Pipeline::getName() {
    return  ::capnp::compiler::LocatedText::Pipeline(_typeless.getPointerField(1));
  }
  #endif  // !CAPNP_LITE
  inline void Expression::Member::Builder::setName( ::capnp::compiler::LocatedText::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::set(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedText::Builder Expression::Member::Builder::initName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::init(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Expression::Member::Builder::adoptName(
      ::capnp::Orphan< ::capnp::compiler::LocatedText>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::adopt(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedText> Expression::Member::Builder::disownName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::disown(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  
  inline  ::capnp::compiler::Declaration::Which Declaration::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Declaration::Which Declaration::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Reader::hasName() const {
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Builder::hasName() {
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedText::Reader Declaration::Reader::getName() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedText::Builder Declaration::Builder::getName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::LocatedText::Pipeline Declaration::Pipeline::getName() {
    return  ::capnp::compiler::LocatedText::Pipeline(_typeless.getPointerField(0));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Builder::setName( ::capnp::compiler::LocatedText::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedText::Builder Declaration::Builder::initName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::adoptName(
      ::capnp::Orphan< ::capnp::compiler::LocatedText>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedText> Declaration::Builder::disownName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline typename Declaration::Id::Reader Declaration::Reader::getId() const {
    return typename Declaration::Id::Reader(_reader);
  }
  inline typename Declaration::Id::Builder Declaration::Builder::getId() {
    return typename Declaration::Id::Builder(_builder);
  }
  #if !CAPNP_LITE
  inline typename Declaration::Id::Pipeline Declaration::Pipeline::getId() {
    return typename Declaration::Id::Pipeline(_typeless.noop());
  }
  #endif  // !CAPNP_LITE
  inline typename Declaration::Id::Builder Declaration::Builder::initId() {
    _builder.setDataField< ::uint16_t>(::capnp::bounded<0>() * ::capnp::ELEMENTS, 0);
    _builder.getPointerField(::capnp::bounded<1>() * ::capnp::POINTERS).clear();
    return typename Declaration::Id::Builder(_builder);
  }
  inline bool Declaration::Reader::hasNestedDecls() const {
    return !_reader.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Builder::hasNestedDecls() {
    return !_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>::Reader Declaration::Reader::getNestedDecls() const {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>::Builder Declaration::Builder::getNestedDecls() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::setNestedDecls( ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>::Builder Declaration::Builder::initNestedDecls(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS), size);
  }
  inline void Declaration::Builder::adoptNestedDecls(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>> Declaration::Builder::disownNestedDecls() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Reader::hasAnnotations() const {
    return !_reader.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Builder::hasAnnotations() {
    return !_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Reader Declaration::Reader::getAnnotations() const {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Builder Declaration::Builder::getAnnotations() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::setAnnotations( ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Builder Declaration::Builder::initAnnotations(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS), size);
  }
  inline void Declaration::Builder::adoptAnnotations(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>> Declaration::Builder::disownAnnotations() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS));
  }
  
  inline  ::uint32_t Declaration::Reader::getStartByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Declaration::Builder::getStartByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setStartByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t Declaration::Reader::getEndByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Declaration::Builder::getEndByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setEndByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::hasDocComment() const {
    return !_reader.getPointerField(
        ::capnp::bounded<4>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Builder::hasDocComment() {
    return !_builder.getPointerField(
        ::capnp::bounded<4>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::Text::Reader Declaration::Reader::getDocComment() const {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
        ::capnp::bounded<4>() * ::capnp::POINTERS));
  }
  inline  ::capnp::Text::Builder Declaration::Builder::getDocComment() {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
        ::capnp::bounded<4>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::setDocComment( ::capnp::Text::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
        ::capnp::bounded<4>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::Text::Builder Declaration::Builder::initDocComment(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
        ::capnp::bounded<4>() * ::capnp::POINTERS), size);
  }
  inline void Declaration::Builder::adoptDocComment(
      ::capnp::Orphan< ::capnp::Text>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
        ::capnp::bounded<4>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::Text> Declaration::Builder::disownDocComment() {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
        ::capnp::bounded<4>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Reader::isFile() const {
    return which() == Declaration::FILE;
  }
  inline bool Declaration::Builder::isFile() {
    return which() == Declaration::FILE;
  }
  inline  ::capnp::Void Declaration::Reader::getFile() const {
    KJ_IREQUIRE((which() == Declaration::FILE),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getFile() {
    KJ_IREQUIRE((which() == Declaration::FILE),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setFile( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::FILE);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isUsing() const {
    return which() == Declaration::USING;
  }
  inline bool Declaration::Builder::isUsing() {
    return which() == Declaration::USING;
  }
  inline typename Declaration::Using::Reader Declaration::Reader::getUsing() const {
    KJ_IREQUIRE((which() == Declaration::USING),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Using::Reader(_reader);
  }
  inline typename Declaration::Using::Builder Declaration::Builder::getUsing() {
    KJ_IREQUIRE((which() == Declaration::USING),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Using::Builder(_builder);
  }
  inline typename Declaration::Using::Builder Declaration::Builder::initUsing() {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::USING);
    _builder.getPointerField(::capnp::bounded<5>() * ::capnp::POINTERS).clear();
    return typename Declaration::Using::Builder(_builder);
  }
  inline bool Declaration::Reader::isConst() const {
    return which() == Declaration::CONST;
  }
  inline bool Declaration::Builder::isConst() {
    return which() == Declaration::CONST;
  }
  inline typename Declaration::Const::Reader Declaration::Reader::getConst() const {
    KJ_IREQUIRE((which() == Declaration::CONST),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Const::Reader(_reader);
  }
  inline typename Declaration::Const::Builder Declaration::Builder::getConst() {
    KJ_IREQUIRE((which() == Declaration::CONST),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Const::Builder(_builder);
  }
  inline typename Declaration::Const::Builder Declaration::Builder::initConst() {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::CONST);
    _builder.getPointerField(::capnp::bounded<5>() * ::capnp::POINTERS).clear();
    _builder.getPointerField(::capnp::bounded<6>() * ::capnp::POINTERS).clear();
    return typename Declaration::Const::Builder(_builder);
  }
  inline bool Declaration::Reader::isEnum() const {
    return which() == Declaration::ENUM;
  }
  inline bool Declaration::Builder::isEnum() {
    return which() == Declaration::ENUM;
  }
  inline  ::capnp::Void Declaration::Reader::getEnum() const {
    KJ_IREQUIRE((which() == Declaration::ENUM),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getEnum() {
    KJ_IREQUIRE((which() == Declaration::ENUM),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setEnum( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::ENUM);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isEnumerant() const {
    return which() == Declaration::ENUMERANT;
  }
  inline bool Declaration::Builder::isEnumerant() {
    return which() == Declaration::ENUMERANT;
  }
  inline  ::capnp::Void Declaration::Reader::getEnumerant() const {
    KJ_IREQUIRE((which() == Declaration::ENUMERANT),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getEnumerant() {
    KJ_IREQUIRE((which() == Declaration::ENUMERANT),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setEnumerant( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::ENUMERANT);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isStruct() const {
    return which() == Declaration::STRUCT;
  }
  inline bool Declaration::Builder::isStruct() {
    return which() == Declaration::STRUCT;
  }
  inline  ::capnp::Void Declaration::Reader::getStruct() const {
    KJ_IREQUIRE((which() == Declaration::STRUCT),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getStruct() {
    KJ_IREQUIRE((which() == Declaration::STRUCT),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setStruct( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::STRUCT);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isField() const {
    return which() == Declaration::FIELD;
  }
  inline bool Declaration::Builder::isField() {
    return which() == Declaration::FIELD;
  }
  inline typename Declaration::Field::Reader Declaration::Reader::getField() const {
    KJ_IREQUIRE((which() == Declaration::FIELD),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Field::Reader(_reader);
  }
  inline typename Declaration::Field::Builder Declaration::Builder::getField() {
    KJ_IREQUIRE((which() == Declaration::FIELD),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Field::Builder(_builder);
  }
  inline typename Declaration::Field::Builder Declaration::Builder::initField() {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::FIELD);
    _builder.setDataField< ::uint16_t>(::capnp::bounded<6>() * ::capnp::ELEMENTS, 0);
    _builder.getPointerField(::capnp::bounded<5>() * ::capnp::POINTERS).clear();
    _builder.getPointerField(::capnp::bounded<6>() * ::capnp::POINTERS).clear();
    return typename Declaration::Field::Builder(_builder);
  }
  inline bool Declaration::Reader::isUnion() const {
    return which() == Declaration::UNION;
  }
  inline bool Declaration::Builder::isUnion() {
    return which() == Declaration::UNION;
  }
  inline  ::capnp::Void Declaration::Reader::getUnion() const {
    KJ_IREQUIRE((which() == Declaration::UNION),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getUnion() {
    KJ_IREQUIRE((which() == Declaration::UNION),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setUnion( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::UNION);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isGroup() const {
    return which() == Declaration::GROUP;
  }
  inline bool Declaration::Builder::isGroup() {
    return which() == Declaration::GROUP;
  }
  inline  ::capnp::Void Declaration::Reader::getGroup() const {
    KJ_IREQUIRE((which() == Declaration::GROUP),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getGroup() {
    KJ_IREQUIRE((which() == Declaration::GROUP),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setGroup( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::GROUP);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isInterface() const {
    return which() == Declaration::INTERFACE;
  }
  inline bool Declaration::Builder::isInterface() {
    return which() == Declaration::INTERFACE;
  }
  inline typename Declaration::Interface::Reader Declaration::Reader::getInterface() const {
    KJ_IREQUIRE((which() == Declaration::INTERFACE),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Interface::Reader(_reader);
  }
  inline typename Declaration::Interface::Builder Declaration::Builder::getInterface() {
    KJ_IREQUIRE((which() == Declaration::INTERFACE),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Interface::Builder(_builder);
  }
  inline typename Declaration::Interface::Builder Declaration::Builder::initInterface() {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::INTERFACE);
    _builder.getPointerField(::capnp::bounded<5>() * ::capnp::POINTERS).clear();
    return typename Declaration::Interface::Builder(_builder);
  }
  inline bool Declaration::Reader::isMethod() const {
    return which() == Declaration::METHOD;
  }
  inline bool Declaration::Builder::isMethod() {
    return which() == Declaration::METHOD;
  }
  inline typename Declaration::Method::Reader Declaration::Reader::getMethod() const {
    KJ_IREQUIRE((which() == Declaration::METHOD),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Method::Reader(_reader);
  }
  inline typename Declaration::Method::Builder Declaration::Builder::getMethod() {
    KJ_IREQUIRE((which() == Declaration::METHOD),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Method::Builder(_builder);
  }
  inline typename Declaration::Method::Builder Declaration::Builder::initMethod() {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::METHOD);
    _builder.setDataField< ::uint16_t>(::capnp::bounded<6>() * ::capnp::ELEMENTS, 0);
    _builder.getPointerField(::capnp::bounded<5>() * ::capnp::POINTERS).clear();
    _builder.getPointerField(::capnp::bounded<6>() * ::capnp::POINTERS).clear();
    return typename Declaration::Method::Builder(_builder);
  }
  inline bool Declaration::Reader::isAnnotation() const {
    return which() == Declaration::ANNOTATION;
  }
  inline bool Declaration::Builder::isAnnotation() {
    return which() == Declaration::ANNOTATION;
  }
  inline typename Declaration::Annotation::Reader Declaration::Reader::getAnnotation() const {
    KJ_IREQUIRE((which() == Declaration::ANNOTATION),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Annotation::Reader(_reader);
  }
  inline typename Declaration::Annotation::Builder Declaration::Builder::getAnnotation() {
    KJ_IREQUIRE((which() == Declaration::ANNOTATION),
                "Must check which() before get()ing a union member.");
    return typename Declaration::Annotation::Builder(_builder);
  }
  inline typename Declaration::Annotation::Builder Declaration::Builder::initAnnotation() {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::ANNOTATION);
    _builder.setDataField<bool>(::capnp::bounded<96>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<97>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<98>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<99>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<100>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<101>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<102>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<103>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<104>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<105>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<106>() * ::capnp::ELEMENTS, 0);
    _builder.setDataField<bool>(::capnp::bounded<107>() * ::capnp::ELEMENTS, 0);
    _builder.getPointerField(::capnp::bounded<5>() * ::capnp::POINTERS).clear();
    return typename Declaration::Annotation::Builder(_builder);
  }
  inline bool Declaration::Reader::isNakedId() const {
    return which() == Declaration::NAKED_ID;
  }
  inline bool Declaration::Builder::isNakedId() {
    return which() == Declaration::NAKED_ID;
  }
  inline bool Declaration::Reader::hasNakedId() const {
    if (which() != Declaration::NAKED_ID) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Builder::hasNakedId() {
    if (which() != Declaration::NAKED_ID) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedInteger::Reader Declaration::Reader::getNakedId() const {
    KJ_IREQUIRE((which() == Declaration::NAKED_ID),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::get(_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedInteger::Builder Declaration::Builder::getNakedId() {
    KJ_IREQUIRE((which() == Declaration::NAKED_ID),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::get(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::setNakedId( ::capnp::compiler::LocatedInteger::Reader value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::NAKED_ID);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::set(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedInteger::Builder Declaration::Builder::initNakedId() {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::NAKED_ID);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::init(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::adoptNakedId(
      ::capnp::Orphan< ::capnp::compiler::LocatedInteger>&& value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::NAKED_ID);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::adopt(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedInteger> Declaration::Builder::disownNakedId() {
    KJ_IREQUIRE((which() == Declaration::NAKED_ID),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::disown(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Reader::isNakedAnnotation() const {
    return which() == Declaration::NAKED_ANNOTATION;
  }
  inline bool Declaration::Builder::isNakedAnnotation() {
    return which() == Declaration::NAKED_ANNOTATION;
  }
  inline bool Declaration::Reader::hasNakedAnnotation() const {
    if (which() != Declaration::NAKED_ANNOTATION) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Builder::hasNakedAnnotation() {
    if (which() != Declaration::NAKED_ANNOTATION) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Declaration::AnnotationApplication::Reader Declaration::Reader::getNakedAnnotation() const {
    KJ_IREQUIRE((which() == Declaration::NAKED_ANNOTATION),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::AnnotationApplication>::get(_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Declaration::AnnotationApplication::Builder Declaration::Builder::getNakedAnnotation() {
    KJ_IREQUIRE((which() == Declaration::NAKED_ANNOTATION),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::AnnotationApplication>::get(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::setNakedAnnotation( ::capnp::compiler::Declaration::AnnotationApplication::Reader value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::NAKED_ANNOTATION);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::AnnotationApplication>::set(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Declaration::AnnotationApplication::Builder Declaration::Builder::initNakedAnnotation() {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::NAKED_ANNOTATION);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::AnnotationApplication>::init(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::adoptNakedAnnotation(
      ::capnp::Orphan< ::capnp::compiler::Declaration::AnnotationApplication>&& value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::NAKED_ANNOTATION);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::AnnotationApplication>::adopt(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Declaration::AnnotationApplication> Declaration::Builder::disownNakedAnnotation() {
    KJ_IREQUIRE((which() == Declaration::NAKED_ANNOTATION),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::AnnotationApplication>::disown(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Reader::isBuiltinVoid() const {
    return which() == Declaration::BUILTIN_VOID;
  }
  inline bool Declaration::Builder::isBuiltinVoid() {
    return which() == Declaration::BUILTIN_VOID;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinVoid() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_VOID),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinVoid() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_VOID),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinVoid( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_VOID);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinBool() const {
    return which() == Declaration::BUILTIN_BOOL;
  }
  inline bool Declaration::Builder::isBuiltinBool() {
    return which() == Declaration::BUILTIN_BOOL;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinBool() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_BOOL),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinBool() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_BOOL),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinBool( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_BOOL);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinInt8() const {
    return which() == Declaration::BUILTIN_INT8;
  }
  inline bool Declaration::Builder::isBuiltinInt8() {
    return which() == Declaration::BUILTIN_INT8;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinInt8() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_INT8),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinInt8() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_INT8),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinInt8( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_INT8);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinInt16() const {
    return which() == Declaration::BUILTIN_INT16;
  }
  inline bool Declaration::Builder::isBuiltinInt16() {
    return which() == Declaration::BUILTIN_INT16;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinInt16() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_INT16),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinInt16() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_INT16),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinInt16( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_INT16);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinInt32() const {
    return which() == Declaration::BUILTIN_INT32;
  }
  inline bool Declaration::Builder::isBuiltinInt32() {
    return which() == Declaration::BUILTIN_INT32;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinInt32() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_INT32),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinInt32() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_INT32),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinInt32( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_INT32);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinInt64() const {
    return which() == Declaration::BUILTIN_INT64;
  }
  inline bool Declaration::Builder::isBuiltinInt64() {
    return which() == Declaration::BUILTIN_INT64;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinInt64() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_INT64),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinInt64() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_INT64),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinInt64( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_INT64);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinUInt8() const {
    return which() == Declaration::BUILTIN_U_INT8;
  }
  inline bool Declaration::Builder::isBuiltinUInt8() {
    return which() == Declaration::BUILTIN_U_INT8;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinUInt8() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_U_INT8),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinUInt8() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_U_INT8),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinUInt8( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_U_INT8);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinUInt16() const {
    return which() == Declaration::BUILTIN_U_INT16;
  }
  inline bool Declaration::Builder::isBuiltinUInt16() {
    return which() == Declaration::BUILTIN_U_INT16;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinUInt16() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_U_INT16),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinUInt16() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_U_INT16),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinUInt16( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_U_INT16);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinUInt32() const {
    return which() == Declaration::BUILTIN_U_INT32;
  }
  inline bool Declaration::Builder::isBuiltinUInt32() {
    return which() == Declaration::BUILTIN_U_INT32;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinUInt32() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_U_INT32),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinUInt32() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_U_INT32),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinUInt32( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_U_INT32);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinUInt64() const {
    return which() == Declaration::BUILTIN_U_INT64;
  }
  inline bool Declaration::Builder::isBuiltinUInt64() {
    return which() == Declaration::BUILTIN_U_INT64;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinUInt64() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_U_INT64),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinUInt64() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_U_INT64),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinUInt64( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_U_INT64);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinFloat32() const {
    return which() == Declaration::BUILTIN_FLOAT32;
  }
  inline bool Declaration::Builder::isBuiltinFloat32() {
    return which() == Declaration::BUILTIN_FLOAT32;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinFloat32() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_FLOAT32),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinFloat32() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_FLOAT32),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinFloat32( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_FLOAT32);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinFloat64() const {
    return which() == Declaration::BUILTIN_FLOAT64;
  }
  inline bool Declaration::Builder::isBuiltinFloat64() {
    return which() == Declaration::BUILTIN_FLOAT64;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinFloat64() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_FLOAT64),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinFloat64() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_FLOAT64),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinFloat64( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_FLOAT64);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinText() const {
    return which() == Declaration::BUILTIN_TEXT;
  }
  inline bool Declaration::Builder::isBuiltinText() {
    return which() == Declaration::BUILTIN_TEXT;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinText() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_TEXT),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinText() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_TEXT),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinText( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_TEXT);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinData() const {
    return which() == Declaration::BUILTIN_DATA;
  }
  inline bool Declaration::Builder::isBuiltinData() {
    return which() == Declaration::BUILTIN_DATA;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinData() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_DATA),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinData() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_DATA),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinData( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_DATA);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinList() const {
    return which() == Declaration::BUILTIN_LIST;
  }
  inline bool Declaration::Builder::isBuiltinList() {
    return which() == Declaration::BUILTIN_LIST;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinList() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_LIST),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinList() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_LIST),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinList( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_LIST);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinObject() const {
    return which() == Declaration::BUILTIN_OBJECT;
  }
  inline bool Declaration::Builder::isBuiltinObject() {
    return which() == Declaration::BUILTIN_OBJECT;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinObject() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_OBJECT),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinObject() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_OBJECT),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinObject( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_OBJECT);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinAnyPointer() const {
    return which() == Declaration::BUILTIN_ANY_POINTER;
  }
  inline bool Declaration::Builder::isBuiltinAnyPointer() {
    return which() == Declaration::BUILTIN_ANY_POINTER;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinAnyPointer() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_ANY_POINTER),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinAnyPointer() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_ANY_POINTER),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinAnyPointer( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_ANY_POINTER);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::hasParameters() const {
    return !_reader.getPointerField(
        ::capnp::bounded<7>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Builder::hasParameters() {
    return !_builder.getPointerField(
        ::capnp::bounded<7>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>::Reader Declaration::Reader::getParameters() const {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<7>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>::Builder Declaration::Builder::getParameters() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<7>() * ::capnp::POINTERS));
  }
  inline void Declaration::Builder::setParameters( ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<7>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>::Builder Declaration::Builder::initParameters(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<7>() * ::capnp::POINTERS), size);
  }
  inline void Declaration::Builder::adoptParameters(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<7>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>> Declaration::Builder::disownParameters() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::BrandParameter,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<7>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Reader::isBuiltinAnyStruct() const {
    return which() == Declaration::BUILTIN_ANY_STRUCT;
  }
  inline bool Declaration::Builder::isBuiltinAnyStruct() {
    return which() == Declaration::BUILTIN_ANY_STRUCT;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinAnyStruct() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_ANY_STRUCT),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinAnyStruct() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_ANY_STRUCT),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinAnyStruct( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_ANY_STRUCT);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinAnyList() const {
    return which() == Declaration::BUILTIN_ANY_LIST;
  }
  inline bool Declaration::Builder::isBuiltinAnyList() {
    return which() == Declaration::BUILTIN_ANY_LIST;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinAnyList() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_ANY_LIST),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinAnyList() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_ANY_LIST),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinAnyList( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_ANY_LIST);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Reader::isBuiltinCapability() const {
    return which() == Declaration::BUILTIN_CAPABILITY;
  }
  inline bool Declaration::Builder::isBuiltinCapability() {
    return which() == Declaration::BUILTIN_CAPABILITY;
  }
  inline  ::capnp::Void Declaration::Reader::getBuiltinCapability() const {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_CAPABILITY),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Builder::getBuiltinCapability() {
    KJ_IREQUIRE((which() == Declaration::BUILTIN_CAPABILITY),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Builder::setBuiltinCapability( ::capnp::Void value) {
    _builder.setDataField<Declaration::Which>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, Declaration::BUILTIN_CAPABILITY);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::BrandParameter::Reader::hasName() const {
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::BrandParameter::Builder::hasName() {
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::Text::Reader Declaration::BrandParameter::Reader::getName() const {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::Text::Builder Declaration::BrandParameter::Builder::getName() {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Declaration::BrandParameter::Builder::setName( ::capnp::Text::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::Text::Builder Declaration::BrandParameter::Builder::initName(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), size);
  }
  inline void Declaration::BrandParameter::Builder::adoptName(
      ::capnp::Orphan< ::capnp::Text>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::Text> Declaration::BrandParameter::Builder::disownName() {
    return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline  ::uint32_t Declaration::BrandParameter::Reader::getStartByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Declaration::BrandParameter::Builder::getStartByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::BrandParameter::Builder::setStartByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t Declaration::BrandParameter::Reader::getEndByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Declaration::BrandParameter::Builder::getEndByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::BrandParameter::Builder::setEndByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::AnnotationApplication::Reader::hasName() const {
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::AnnotationApplication::Builder::hasName() {
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::AnnotationApplication::Reader::getName() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::AnnotationApplication::Builder::getName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Declaration::AnnotationApplication::Pipeline::getName() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(0));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::AnnotationApplication::Builder::setName( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::AnnotationApplication::Builder::initName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Declaration::AnnotationApplication::Builder::adoptName(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::AnnotationApplication::Builder::disownName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline typename Declaration::AnnotationApplication::Value::Reader Declaration::AnnotationApplication::Reader::getValue() const {
    return typename Declaration::AnnotationApplication::Value::Reader(_reader);
  }
  inline typename Declaration::AnnotationApplication::Value::Builder Declaration::AnnotationApplication::Builder::getValue() {
    return typename Declaration::AnnotationApplication::Value::Builder(_builder);
  }
  #if !CAPNP_LITE
  inline typename Declaration::AnnotationApplication::Value::Pipeline Declaration::AnnotationApplication::Pipeline::getValue() {
    return typename Declaration::AnnotationApplication::Value::Pipeline(_typeless.noop());
  }
  #endif  // !CAPNP_LITE
  inline typename Declaration::AnnotationApplication::Value::Builder Declaration::AnnotationApplication::Builder::initValue() {
    _builder.setDataField< ::uint16_t>(::capnp::bounded<0>() * ::capnp::ELEMENTS, 0);
    _builder.getPointerField(::capnp::bounded<1>() * ::capnp::POINTERS).clear();
    return typename Declaration::AnnotationApplication::Value::Builder(_builder);
  }
  inline  ::capnp::compiler::Declaration::AnnotationApplication::Value::Which Declaration::AnnotationApplication::Value::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Declaration::AnnotationApplication::Value::Which Declaration::AnnotationApplication::Value::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::AnnotationApplication::Value::Reader::isNone() const {
    return which() == Declaration::AnnotationApplication::Value::NONE;
  }
  inline bool Declaration::AnnotationApplication::Value::Builder::isNone() {
    return which() == Declaration::AnnotationApplication::Value::NONE;
  }
  inline  ::capnp::Void Declaration::AnnotationApplication::Value::Reader::getNone() const {
    KJ_IREQUIRE((which() == Declaration::AnnotationApplication::Value::NONE),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::AnnotationApplication::Value::Builder::getNone() {
    KJ_IREQUIRE((which() == Declaration::AnnotationApplication::Value::NONE),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::AnnotationApplication::Value::Builder::setNone( ::capnp::Void value) {
    _builder.setDataField<Declaration::AnnotationApplication::Value::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::AnnotationApplication::Value::NONE);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::AnnotationApplication::Value::Reader::isExpression() const {
    return which() == Declaration::AnnotationApplication::Value::EXPRESSION;
  }
  inline bool Declaration::AnnotationApplication::Value::Builder::isExpression() {
    return which() == Declaration::AnnotationApplication::Value::EXPRESSION;
  }
  inline bool Declaration::AnnotationApplication::Value::Reader::hasExpression() const {
    if (which() != Declaration::AnnotationApplication::Value::EXPRESSION) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::AnnotationApplication::Value::Builder::hasExpression() {
    if (which() != Declaration::AnnotationApplication::Value::EXPRESSION) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::AnnotationApplication::Value::Reader::getExpression() const {
    KJ_IREQUIRE((which() == Declaration::AnnotationApplication::Value::EXPRESSION),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::AnnotationApplication::Value::Builder::getExpression() {
    KJ_IREQUIRE((which() == Declaration::AnnotationApplication::Value::EXPRESSION),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Declaration::AnnotationApplication::Value::Builder::setExpression( ::capnp::compiler::Expression::Reader value) {
    _builder.setDataField<Declaration::AnnotationApplication::Value::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::AnnotationApplication::Value::EXPRESSION);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::AnnotationApplication::Value::Builder::initExpression() {
    _builder.setDataField<Declaration::AnnotationApplication::Value::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::AnnotationApplication::Value::EXPRESSION);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Declaration::AnnotationApplication::Value::Builder::adoptExpression(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    _builder.setDataField<Declaration::AnnotationApplication::Value::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::AnnotationApplication::Value::EXPRESSION);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::AnnotationApplication::Value::Builder::disownExpression() {
    KJ_IREQUIRE((which() == Declaration::AnnotationApplication::Value::EXPRESSION),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  
  inline  ::capnp::compiler::Declaration::ParamList::Which Declaration::ParamList::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Declaration::ParamList::Which Declaration::ParamList::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::ParamList::Reader::isNamedList() const {
    return which() == Declaration::ParamList::NAMED_LIST;
  }
  inline bool Declaration::ParamList::Builder::isNamedList() {
    return which() == Declaration::ParamList::NAMED_LIST;
  }
  inline bool Declaration::ParamList::Reader::hasNamedList() const {
    if (which() != Declaration::ParamList::NAMED_LIST) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::ParamList::Builder::hasNamedList() {
    if (which() != Declaration::ParamList::NAMED_LIST) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>::Reader Declaration::ParamList::Reader::getNamedList() const {
    KJ_IREQUIRE((which() == Declaration::ParamList::NAMED_LIST),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>::Builder Declaration::ParamList::Builder::getNamedList() {
    KJ_IREQUIRE((which() == Declaration::ParamList::NAMED_LIST),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Declaration::ParamList::Builder::setNamedList( ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>::Reader value) {
    _builder.setDataField<Declaration::ParamList::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::ParamList::NAMED_LIST);
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>::Builder Declaration::ParamList::Builder::initNamedList(unsigned int size) {
    _builder.setDataField<Declaration::ParamList::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::ParamList::NAMED_LIST);
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), size);
  }
  inline void Declaration::ParamList::Builder::adoptNamedList(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>>&& value) {
    _builder.setDataField<Declaration::ParamList::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::ParamList::NAMED_LIST);
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>> Declaration::ParamList::Builder::disownNamedList() {
    KJ_IREQUIRE((which() == Declaration::ParamList::NAMED_LIST),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::Param,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::ParamList::Reader::isType() const {
    return which() == Declaration::ParamList::TYPE;
  }
  inline bool Declaration::ParamList::Builder::isType() {
    return which() == Declaration::ParamList::TYPE;
  }
  inline bool Declaration::ParamList::Reader::hasType() const {
    if (which() != Declaration::ParamList::TYPE) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::ParamList::Builder::hasType() {
    if (which() != Declaration::ParamList::TYPE) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::ParamList::Reader::getType() const {
    KJ_IREQUIRE((which() == Declaration::ParamList::TYPE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::ParamList::Builder::getType() {
    KJ_IREQUIRE((which() == Declaration::ParamList::TYPE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Declaration::ParamList::Builder::setType( ::capnp::compiler::Expression::Reader value) {
    _builder.setDataField<Declaration::ParamList::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::ParamList::TYPE);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::ParamList::Builder::initType() {
    _builder.setDataField<Declaration::ParamList::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::ParamList::TYPE);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Declaration::ParamList::Builder::adoptType(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    _builder.setDataField<Declaration::ParamList::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::ParamList::TYPE);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::ParamList::Builder::disownType() {
    KJ_IREQUIRE((which() == Declaration::ParamList::TYPE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline  ::uint32_t Declaration::ParamList::Reader::getStartByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Declaration::ParamList::Builder::getStartByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::ParamList::Builder::setStartByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t Declaration::ParamList::Reader::getEndByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Declaration::ParamList::Builder::getEndByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::ParamList::Builder::setEndByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::ParamList::Reader::isStream() const {
    return which() == Declaration::ParamList::STREAM;
  }
  inline bool Declaration::ParamList::Builder::isStream() {
    return which() == Declaration::ParamList::STREAM;
  }
  inline  ::capnp::Void Declaration::ParamList::Reader::getStream() const {
    KJ_IREQUIRE((which() == Declaration::ParamList::STREAM),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::ParamList::Builder::getStream() {
    KJ_IREQUIRE((which() == Declaration::ParamList::STREAM),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::ParamList::Builder::setStream( ::capnp::Void value) {
    _builder.setDataField<Declaration::ParamList::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::ParamList::STREAM);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Param::Reader::hasName() const {
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Param::Builder::hasName() {
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedText::Reader Declaration::Param::Reader::getName() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedText::Builder Declaration::Param::Builder::getName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::LocatedText::Pipeline Declaration::Param::Pipeline::getName() {
    return  ::capnp::compiler::LocatedText::Pipeline(_typeless.getPointerField(0));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Param::Builder::setName( ::capnp::compiler::LocatedText::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedText::Builder Declaration::Param::Builder::initName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void Declaration::Param::Builder::adoptName(
      ::capnp::Orphan< ::capnp::compiler::LocatedText>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedText> Declaration::Param::Builder::disownName() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedText>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Param::Reader::hasType() const {
    return !_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Param::Builder::hasType() {
    return !_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::Param::Reader::getType() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Param::Builder::getType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Declaration::Param::Pipeline::getType() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(1));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Param::Builder::setType( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Param::Builder::initType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Declaration::Param::Builder::adoptType(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::Param::Builder::disownType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Param::Reader::hasAnnotations() const {
    return !_reader.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Param::Builder::hasAnnotations() {
    return !_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Reader Declaration::Param::Reader::getAnnotations() const {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Builder Declaration::Param::Builder::getAnnotations() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS));
  }
  inline void Declaration::Param::Builder::setAnnotations( ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>::Builder Declaration::Param::Builder::initAnnotations(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS), size);
  }
  inline void Declaration::Param::Builder::adoptAnnotations(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>> Declaration::Param::Builder::disownAnnotations() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Declaration::AnnotationApplication,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<2>() * ::capnp::POINTERS));
  }
  
  inline typename Declaration::Param::DefaultValue::Reader Declaration::Param::Reader::getDefaultValue() const {
    return typename Declaration::Param::DefaultValue::Reader(_reader);
  }
  inline typename Declaration::Param::DefaultValue::Builder Declaration::Param::Builder::getDefaultValue() {
    return typename Declaration::Param::DefaultValue::Builder(_builder);
  }
  #if !CAPNP_LITE
  inline typename Declaration::Param::DefaultValue::Pipeline Declaration::Param::Pipeline::getDefaultValue() {
    return typename Declaration::Param::DefaultValue::Pipeline(_typeless.noop());
  }
  #endif  // !CAPNP_LITE
  inline typename Declaration::Param::DefaultValue::Builder Declaration::Param::Builder::initDefaultValue() {
    _builder.setDataField< ::uint16_t>(::capnp::bounded<0>() * ::capnp::ELEMENTS, 0);
    _builder.getPointerField(::capnp::bounded<3>() * ::capnp::POINTERS).clear();
    return typename Declaration::Param::DefaultValue::Builder(_builder);
  }
  inline  ::uint32_t Declaration::Param::Reader::getStartByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Declaration::Param::Builder::getStartByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Param::Builder::setStartByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<1>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::uint32_t Declaration::Param::Reader::getEndByte() const {
    return _reader.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  
  inline  ::uint32_t Declaration::Param::Builder::getEndByte() {
    return _builder.getDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Param::Builder::setEndByte( ::uint32_t value) {
    _builder.setDataField< ::uint32_t>(
        ::capnp::bounded<2>() * ::capnp::ELEMENTS, value);
  }
  
  inline  ::capnp::compiler::Declaration::Param::DefaultValue::Which Declaration::Param::DefaultValue::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Declaration::Param::DefaultValue::Which Declaration::Param::DefaultValue::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Param::DefaultValue::Reader::isNone() const {
    return which() == Declaration::Param::DefaultValue::NONE;
  }
  inline bool Declaration::Param::DefaultValue::Builder::isNone() {
    return which() == Declaration::Param::DefaultValue::NONE;
  }
  inline  ::capnp::Void Declaration::Param::DefaultValue::Reader::getNone() const {
    KJ_IREQUIRE((which() == Declaration::Param::DefaultValue::NONE),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Param::DefaultValue::Builder::getNone() {
    KJ_IREQUIRE((which() == Declaration::Param::DefaultValue::NONE),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Param::DefaultValue::Builder::setNone( ::capnp::Void value) {
    _builder.setDataField<Declaration::Param::DefaultValue::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Param::DefaultValue::NONE);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Param::DefaultValue::Reader::isValue() const {
    return which() == Declaration::Param::DefaultValue::VALUE;
  }
  inline bool Declaration::Param::DefaultValue::Builder::isValue() {
    return which() == Declaration::Param::DefaultValue::VALUE;
  }
  inline bool Declaration::Param::DefaultValue::Reader::hasValue() const {
    if (which() != Declaration::Param::DefaultValue::VALUE) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Param::DefaultValue::Builder::hasValue() {
    if (which() != Declaration::Param::DefaultValue::VALUE) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::Param::DefaultValue::Reader::getValue() const {
    KJ_IREQUIRE((which() == Declaration::Param::DefaultValue::VALUE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Param::DefaultValue::Builder::getValue() {
    KJ_IREQUIRE((which() == Declaration::Param::DefaultValue::VALUE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS));
  }
  inline void Declaration::Param::DefaultValue::Builder::setValue( ::capnp::compiler::Expression::Reader value) {
    _builder.setDataField<Declaration::Param::DefaultValue::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Param::DefaultValue::VALUE);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Param::DefaultValue::Builder::initValue() {
    _builder.setDataField<Declaration::Param::DefaultValue::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Param::DefaultValue::VALUE);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS));
  }
  inline void Declaration::Param::DefaultValue::Builder::adoptValue(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    _builder.setDataField<Declaration::Param::DefaultValue::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Param::DefaultValue::VALUE);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::Param::DefaultValue::Builder::disownValue() {
    KJ_IREQUIRE((which() == Declaration::Param::DefaultValue::VALUE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<3>() * ::capnp::POINTERS));
  }
  
  inline  ::capnp::compiler::Declaration::Id::Which Declaration::Id::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Declaration::Id::Which Declaration::Id::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Id::Reader::isUnspecified() const {
    return which() == Declaration::Id::UNSPECIFIED;
  }
  inline bool Declaration::Id::Builder::isUnspecified() {
    return which() == Declaration::Id::UNSPECIFIED;
  }
  inline  ::capnp::Void Declaration::Id::Reader::getUnspecified() const {
    KJ_IREQUIRE((which() == Declaration::Id::UNSPECIFIED),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Id::Builder::getUnspecified() {
    KJ_IREQUIRE((which() == Declaration::Id::UNSPECIFIED),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Id::Builder::setUnspecified( ::capnp::Void value) {
    _builder.setDataField<Declaration::Id::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Id::UNSPECIFIED);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Id::Reader::isUid() const {
    return which() == Declaration::Id::UID;
  }
  inline bool Declaration::Id::Builder::isUid() {
    return which() == Declaration::Id::UID;
  }
  inline bool Declaration::Id::Reader::hasUid() const {
    if (which() != Declaration::Id::UID) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Id::Builder::hasUid() {
    if (which() != Declaration::Id::UID) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedInteger::Reader Declaration::Id::Reader::getUid() const {
    KJ_IREQUIRE((which() == Declaration::Id::UID),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::get(_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedInteger::Builder Declaration::Id::Builder::getUid() {
    KJ_IREQUIRE((which() == Declaration::Id::UID),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::get(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Declaration::Id::Builder::setUid( ::capnp::compiler::LocatedInteger::Reader value) {
    _builder.setDataField<Declaration::Id::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Id::UID);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::set(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedInteger::Builder Declaration::Id::Builder::initUid() {
    _builder.setDataField<Declaration::Id::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Id::UID);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::init(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Declaration::Id::Builder::adoptUid(
      ::capnp::Orphan< ::capnp::compiler::LocatedInteger>&& value) {
    _builder.setDataField<Declaration::Id::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Id::UID);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::adopt(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedInteger> Declaration::Id::Builder::disownUid() {
    KJ_IREQUIRE((which() == Declaration::Id::UID),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::disown(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Id::Reader::isOrdinal() const {
    return which() == Declaration::Id::ORDINAL;
  }
  inline bool Declaration::Id::Builder::isOrdinal() {
    return which() == Declaration::Id::ORDINAL;
  }
  inline bool Declaration::Id::Reader::hasOrdinal() const {
    if (which() != Declaration::Id::ORDINAL) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Id::Builder::hasOrdinal() {
    if (which() != Declaration::Id::ORDINAL) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::LocatedInteger::Reader Declaration::Id::Reader::getOrdinal() const {
    KJ_IREQUIRE((which() == Declaration::Id::ORDINAL),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::get(_reader.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::LocatedInteger::Builder Declaration::Id::Builder::getOrdinal() {
    KJ_IREQUIRE((which() == Declaration::Id::ORDINAL),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::get(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Declaration::Id::Builder::setOrdinal( ::capnp::compiler::LocatedInteger::Reader value) {
    _builder.setDataField<Declaration::Id::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Id::ORDINAL);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::set(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::LocatedInteger::Builder Declaration::Id::Builder::initOrdinal() {
    _builder.setDataField<Declaration::Id::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Id::ORDINAL);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::init(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  inline void Declaration::Id::Builder::adoptOrdinal(
      ::capnp::Orphan< ::capnp::compiler::LocatedInteger>&& value) {
    _builder.setDataField<Declaration::Id::Which>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, Declaration::Id::ORDINAL);
    ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::adopt(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::LocatedInteger> Declaration::Id::Builder::disownOrdinal() {
    KJ_IREQUIRE((which() == Declaration::Id::ORDINAL),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::LocatedInteger>::disown(_builder.getPointerField(
        ::capnp::bounded<1>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Using::Reader::hasTarget() const {
    return !_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Using::Builder::hasTarget() {
    return !_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::Using::Reader::getTarget() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Using::Builder::getTarget() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Declaration::Using::Pipeline::getTarget() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(5));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Using::Builder::setTarget( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Using::Builder::initTarget() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Using::Builder::adoptTarget(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::Using::Builder::disownTarget() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Const::Reader::hasType() const {
    return !_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Const::Builder::hasType() {
    return !_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::Const::Reader::getType() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Const::Builder::getType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Declaration::Const::Pipeline::getType() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(5));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Const::Builder::setType( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Const::Builder::initType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Const::Builder::adoptType(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::Const::Builder::disownType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Const::Reader::hasValue() const {
    return !_reader.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Const::Builder::hasValue() {
    return !_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::Const::Reader::getValue() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Const::Builder::getValue() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Declaration::Const::Pipeline::getValue() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(6));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Const::Builder::setValue( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Const::Builder::initValue() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  inline void Declaration::Const::Builder::adoptValue(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::Const::Builder::disownValue() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Field::Reader::hasType() const {
    return !_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Field::Builder::hasType() {
    return !_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::Field::Reader::getType() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Field::Builder::getType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Declaration::Field::Pipeline::getType() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(5));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Field::Builder::setType( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Field::Builder::initType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Field::Builder::adoptType(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::Field::Builder::disownType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  
  inline typename Declaration::Field::DefaultValue::Reader Declaration::Field::Reader::getDefaultValue() const {
    return typename Declaration::Field::DefaultValue::Reader(_reader);
  }
  inline typename Declaration::Field::DefaultValue::Builder Declaration::Field::Builder::getDefaultValue() {
    return typename Declaration::Field::DefaultValue::Builder(_builder);
  }
  #if !CAPNP_LITE
  inline typename Declaration::Field::DefaultValue::Pipeline Declaration::Field::Pipeline::getDefaultValue() {
    return typename Declaration::Field::DefaultValue::Pipeline(_typeless.noop());
  }
  #endif  // !CAPNP_LITE
  inline typename Declaration::Field::DefaultValue::Builder Declaration::Field::Builder::initDefaultValue() {
    _builder.setDataField< ::uint16_t>(::capnp::bounded<6>() * ::capnp::ELEMENTS, 0);
    _builder.getPointerField(::capnp::bounded<6>() * ::capnp::POINTERS).clear();
    return typename Declaration::Field::DefaultValue::Builder(_builder);
  }
  inline  ::capnp::compiler::Declaration::Field::DefaultValue::Which Declaration::Field::DefaultValue::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Declaration::Field::DefaultValue::Which Declaration::Field::DefaultValue::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Field::DefaultValue::Reader::isNone() const {
    return which() == Declaration::Field::DefaultValue::NONE;
  }
  inline bool Declaration::Field::DefaultValue::Builder::isNone() {
    return which() == Declaration::Field::DefaultValue::NONE;
  }
  inline  ::capnp::Void Declaration::Field::DefaultValue::Reader::getNone() const {
    KJ_IREQUIRE((which() == Declaration::Field::DefaultValue::NONE),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Field::DefaultValue::Builder::getNone() {
    KJ_IREQUIRE((which() == Declaration::Field::DefaultValue::NONE),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Field::DefaultValue::Builder::setNone( ::capnp::Void value) {
    _builder.setDataField<Declaration::Field::DefaultValue::Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS, Declaration::Field::DefaultValue::NONE);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Field::DefaultValue::Reader::isValue() const {
    return which() == Declaration::Field::DefaultValue::VALUE;
  }
  inline bool Declaration::Field::DefaultValue::Builder::isValue() {
    return which() == Declaration::Field::DefaultValue::VALUE;
  }
  inline bool Declaration::Field::DefaultValue::Reader::hasValue() const {
    if (which() != Declaration::Field::DefaultValue::VALUE) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Field::DefaultValue::Builder::hasValue() {
    if (which() != Declaration::Field::DefaultValue::VALUE) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::Field::DefaultValue::Reader::getValue() const {
    KJ_IREQUIRE((which() == Declaration::Field::DefaultValue::VALUE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Field::DefaultValue::Builder::getValue() {
    KJ_IREQUIRE((which() == Declaration::Field::DefaultValue::VALUE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  inline void Declaration::Field::DefaultValue::Builder::setValue( ::capnp::compiler::Expression::Reader value) {
    _builder.setDataField<Declaration::Field::DefaultValue::Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS, Declaration::Field::DefaultValue::VALUE);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Field::DefaultValue::Builder::initValue() {
    _builder.setDataField<Declaration::Field::DefaultValue::Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS, Declaration::Field::DefaultValue::VALUE);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  inline void Declaration::Field::DefaultValue::Builder::adoptValue(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    _builder.setDataField<Declaration::Field::DefaultValue::Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS, Declaration::Field::DefaultValue::VALUE);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::Field::DefaultValue::Builder::disownValue() {
    KJ_IREQUIRE((which() == Declaration::Field::DefaultValue::VALUE),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Interface::Reader::hasSuperclasses() const {
    return !_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Interface::Builder::hasSuperclasses() {
    return !_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Reader Declaration::Interface::Reader::getSuperclasses() const {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::get(_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Builder Declaration::Interface::Builder::getSuperclasses() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::get(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Interface::Builder::setSuperclasses( ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::set(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>::Builder Declaration::Interface::Builder::initSuperclasses(unsigned int size) {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::init(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), size);
  }
  inline void Declaration::Interface::Builder::adoptSuperclasses(
      ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::adopt(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>> Declaration::Interface::Builder::disownSuperclasses() {
    return ::capnp::_::PointerHelpers< ::capnp::List< ::capnp::compiler::Expression,  ::capnp::Kind::STRUCT>>::disown(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Method::Reader::hasParams() const {
    return !_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Method::Builder::hasParams() {
    return !_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Declaration::ParamList::Reader Declaration::Method::Reader::getParams() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::get(_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Declaration::ParamList::Builder Declaration::Method::Builder::getParams() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::get(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Declaration::ParamList::Pipeline Declaration::Method::Pipeline::getParams() {
    return  ::capnp::compiler::Declaration::ParamList::Pipeline(_typeless.getPointerField(5));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Method::Builder::setParams( ::capnp::compiler::Declaration::ParamList::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::set(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Declaration::ParamList::Builder Declaration::Method::Builder::initParams() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::init(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Method::Builder::adoptParams(
      ::capnp::Orphan< ::capnp::compiler::Declaration::ParamList>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::adopt(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Declaration::ParamList> Declaration::Method::Builder::disownParams() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::disown(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  
  inline typename Declaration::Method::Results::Reader Declaration::Method::Reader::getResults() const {
    return typename Declaration::Method::Results::Reader(_reader);
  }
  inline typename Declaration::Method::Results::Builder Declaration::Method::Builder::getResults() {
    return typename Declaration::Method::Results::Builder(_builder);
  }
  #if !CAPNP_LITE
  inline typename Declaration::Method::Results::Pipeline Declaration::Method::Pipeline::getResults() {
    return typename Declaration::Method::Results::Pipeline(_typeless.noop());
  }
  #endif  // !CAPNP_LITE
  inline typename Declaration::Method::Results::Builder Declaration::Method::Builder::initResults() {
    _builder.setDataField< ::uint16_t>(::capnp::bounded<6>() * ::capnp::ELEMENTS, 0);
    _builder.getPointerField(::capnp::bounded<6>() * ::capnp::POINTERS).clear();
    return typename Declaration::Method::Results::Builder(_builder);
  }
  inline  ::capnp::compiler::Declaration::Method::Results::Which Declaration::Method::Results::Reader::which() const {
    return _reader.getDataField<Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS);
  }
  inline  ::capnp::compiler::Declaration::Method::Results::Which Declaration::Method::Results::Builder::which() {
    return _builder.getDataField<Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Method::Results::Reader::isNone() const {
    return which() == Declaration::Method::Results::NONE;
  }
  inline bool Declaration::Method::Results::Builder::isNone() {
    return which() == Declaration::Method::Results::NONE;
  }
  inline  ::capnp::Void Declaration::Method::Results::Reader::getNone() const {
    KJ_IREQUIRE((which() == Declaration::Method::Results::NONE),
                "Must check which() before get()ing a union member.");
    return _reader.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  
  inline  ::capnp::Void Declaration::Method::Results::Builder::getNone() {
    KJ_IREQUIRE((which() == Declaration::Method::Results::NONE),
                "Must check which() before get()ing a union member.");
    return _builder.getDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Method::Results::Builder::setNone( ::capnp::Void value) {
    _builder.setDataField<Declaration::Method::Results::Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS, Declaration::Method::Results::NONE);
    _builder.setDataField< ::capnp::Void>(
        ::capnp::bounded<0>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Method::Results::Reader::isExplicit() const {
    return which() == Declaration::Method::Results::EXPLICIT;
  }
  inline bool Declaration::Method::Results::Builder::isExplicit() {
    return which() == Declaration::Method::Results::EXPLICIT;
  }
  inline bool Declaration::Method::Results::Reader::hasExplicit() const {
    if (which() != Declaration::Method::Results::EXPLICIT) return false;
    return !_reader.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Method::Results::Builder::hasExplicit() {
    if (which() != Declaration::Method::Results::EXPLICIT) return false;
    return !_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Declaration::ParamList::Reader Declaration::Method::Results::Reader::getExplicit() const {
    KJ_IREQUIRE((which() == Declaration::Method::Results::EXPLICIT),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::get(_reader.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Declaration::ParamList::Builder Declaration::Method::Results::Builder::getExplicit() {
    KJ_IREQUIRE((which() == Declaration::Method::Results::EXPLICIT),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::get(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  inline void Declaration::Method::Results::Builder::setExplicit( ::capnp::compiler::Declaration::ParamList::Reader value) {
    _builder.setDataField<Declaration::Method::Results::Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS, Declaration::Method::Results::EXPLICIT);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::set(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Declaration::ParamList::Builder Declaration::Method::Results::Builder::initExplicit() {
    _builder.setDataField<Declaration::Method::Results::Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS, Declaration::Method::Results::EXPLICIT);
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::init(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  inline void Declaration::Method::Results::Builder::adoptExplicit(
      ::capnp::Orphan< ::capnp::compiler::Declaration::ParamList>&& value) {
    _builder.setDataField<Declaration::Method::Results::Which>(
        ::capnp::bounded<6>() * ::capnp::ELEMENTS, Declaration::Method::Results::EXPLICIT);
    ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::adopt(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Declaration::ParamList> Declaration::Method::Results::Builder::disownExplicit() {
    KJ_IREQUIRE((which() == Declaration::Method::Results::EXPLICIT),
                "Must check which() before get()ing a union member.");
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration::ParamList>::disown(_builder.getPointerField(
        ::capnp::bounded<6>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Annotation::Reader::hasType() const {
    return !_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline bool Declaration::Annotation::Builder::hasType() {
    return !_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Expression::Reader Declaration::Annotation::Reader::getType() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_reader.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Annotation::Builder::getType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::get(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Expression::Pipeline Declaration::Annotation::Pipeline::getType() {
    return  ::capnp::compiler::Expression::Pipeline(_typeless.getPointerField(5));
  }
  #endif  // !CAPNP_LITE
  inline void Declaration::Annotation::Builder::setType( ::capnp::compiler::Expression::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::set(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Expression::Builder Declaration::Annotation::Builder::initType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::init(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  inline void Declaration::Annotation::Builder::adoptType(
      ::capnp::Orphan< ::capnp::compiler::Expression>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::adopt(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Expression> Declaration::Annotation::Builder::disownType() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Expression>::disown(_builder.getPointerField(
        ::capnp::bounded<5>() * ::capnp::POINTERS));
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsFile() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<96>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsFile() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<96>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsFile(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<96>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsConst() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<97>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsConst() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<97>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsConst(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<97>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsEnum() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<98>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsEnum() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<98>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsEnum(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<98>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsEnumerant() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<99>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsEnumerant() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<99>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsEnumerant(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<99>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsStruct() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<100>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsStruct() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<100>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsStruct(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<100>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsField() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<101>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsField() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<101>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsField(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<101>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsUnion() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<102>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsUnion() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<102>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsUnion(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<102>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsGroup() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<103>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsGroup() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<103>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsGroup(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<103>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsInterface() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<104>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsInterface() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<104>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsInterface(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<104>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsMethod() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<105>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsMethod() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<105>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsMethod(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<105>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsParam() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<106>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsParam() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<106>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsParam(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<106>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool Declaration::Annotation::Reader::getTargetsAnnotation() const {
    return _reader.getDataField<bool>(
        ::capnp::bounded<107>() * ::capnp::ELEMENTS);
  }
  
  inline bool Declaration::Annotation::Builder::getTargetsAnnotation() {
    return _builder.getDataField<bool>(
        ::capnp::bounded<107>() * ::capnp::ELEMENTS);
  }
  inline void Declaration::Annotation::Builder::setTargetsAnnotation(bool value) {
    _builder.setDataField<bool>(
        ::capnp::bounded<107>() * ::capnp::ELEMENTS, value);
  }
  
  inline bool ParsedFile::Reader::hasRoot() const {
    return !_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline bool ParsedFile::Builder::hasRoot() {
    return !_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS).isNull();
  }
  inline  ::capnp::compiler::Declaration::Reader ParsedFile::Reader::getRoot() const {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration>::get(_reader.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline  ::capnp::compiler::Declaration::Builder ParsedFile::Builder::getRoot() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration>::get(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  #if !CAPNP_LITE
  inline  ::capnp::compiler::Declaration::Pipeline ParsedFile::Pipeline::getRoot() {
    return  ::capnp::compiler::Declaration::Pipeline(_typeless.getPointerField(0));
  }
  #endif  // !CAPNP_LITE
  inline void ParsedFile::Builder::setRoot( ::capnp::compiler::Declaration::Reader value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration>::set(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), value);
  }
  inline  ::capnp::compiler::Declaration::Builder ParsedFile::Builder::initRoot() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration>::init(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  inline void ParsedFile::Builder::adoptRoot(
      ::capnp::Orphan< ::capnp::compiler::Declaration>&& value) {
    ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration>::adopt(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value));
  }
  inline ::capnp::Orphan< ::capnp::compiler::Declaration> ParsedFile::Builder::disownRoot() {
    return ::capnp::_::PointerHelpers< ::capnp::compiler::Declaration>::disown(_builder.getPointerField(
        ::capnp::bounded<0>() * ::capnp::POINTERS));
  }
  
  }  // namespace
  }  // namespace
  
  CAPNP_END_HEADER
  
  