Sha256: 48edf3685fbe2630c3c974760f56671b611da2aa2414e7eda683e13e914442e2

Contents?: true

Size: 862 Bytes

Versions: 2

Compression:

Stored size: 862 Bytes

Contents

module RbGCCXML
  class Method < Function

    # Specifies a default return value for the
    # virtual method wrapper that rb++ will build
    # for this method.
    #
    # This will be needed in the situation where you
    # have a Ruby wrapped class where a C++ method calls
    # another method on the same object that's polymorphic.
    # Rice is unable to figure out the correct path to take,
    # and usually ends up trying to go back up the chain,
    # throwing the NotImplementedError.
    #
    # Specifying this option will turn the throw line into
    # a return line.
    #
    # See director_test's use of do_process_impl for an
    # example of this functionality.
    def default_return_value(value = nil)
      if value
        cache[:default_return_value] = value
      else
        cache[:default_return_value]
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rbplusplus-0.9.1 lib/rbplusplus/transformers/method.rb
rbplusplus-0.9 lib/rbplusplus/transformers/method.rb