diff options
Diffstat (limited to 'src/expr/node_builder.h')
-rw-r--r-- | src/expr/node_builder.h | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/src/expr/node_builder.h b/src/expr/node_builder.h index a093fc954..09e72660e 100644 --- a/src/expr/node_builder.h +++ b/src/expr/node_builder.h @@ -1246,6 +1246,16 @@ void NodeBuilderBase<Builder>::decrRefCounts() { } template <class Builder> +Node NodeBuilderBase<Builder>::constructNode() { + return Node(constructNV()); +} + +template <class Builder> +Node NodeBuilderBase<Builder>::constructNode() const { + return Node(constructNV()); +} + +template <class Builder> Node* NodeBuilderBase<Builder>::constructNodePtr() { return new Node(constructNV()); } @@ -1256,6 +1266,16 @@ Node* NodeBuilderBase<Builder>::constructNodePtr() const { } template <class Builder> +NodeBuilderBase<Builder>::operator Node() { + return constructNode(); +} + +template <class Builder> +NodeBuilderBase<Builder>::operator Node() const { + return constructNode(); +} + +template <class Builder> expr::NodeValue* NodeBuilderBase<Builder>::constructNV() { Assert(!isUsed(), "NodeBuilder is one-shot only; " "attempt to access it after conversion"); @@ -1603,16 +1623,6 @@ expr::NodeValue* NodeBuilderBase<Builder>::constructNV() const { } } -template <class Builder> -NodeBuilderBase<Builder>::operator Node() { - return Node(constructNV()); -} - -template <class Builder> -NodeBuilderBase<Builder>::operator Node() const { - return Node(constructNV()); -} - template <unsigned nchild_thresh> template <unsigned N> void NodeBuilder<nchild_thresh>::internalCopy(const NodeBuilder<N>& nb) { |