Ticket #3 (closed defect: fixed)
WordNet::Synset::Pointer doesn't handle new compound pointer types
| Reported by: | deveiant | Owned by: | deveiant |
|---|---|---|---|
| Priority: | major | Milestone: | Updates |
| Component: | Version: | 0.02 | |
| Keywords: | synset instance pointer types | Cc: |
Description
Some new compound pointer types (e.g., ~i and @i) have been added in recent releases of the WordNet? data files, and trying to extract pointers from the synset for any word which contains it causes a NoMethodError? to be raised.
Minimal testcase:
require 'wordnet' lex = WordNet::Lexicon.new syn = lex.lookup_synsets_by_offset( "04456674%n" ) syn.pointerlist syn.pointers
And the results of running it:
$ ruby experiments/unhandled_pointer_types.rb
syn.pointerlist
---------------------------------------------------------------------------
"@i 03730777%n 0000|#p 08029251%n 0000"
---------------------------------------------------------------------------
syn.pointers
---------------------------------------------------------------------------
undefined method `index' for nil:NilClass
/Users/ged/source/ruby/WordNet/lib/wordnet/synset.rb:104:in `initialize'
/Users/ged/source/ruby/WordNet/lib/wordnet/synset.rb:73:in `parse'
/Users/ged/source/ruby/WordNet/lib/wordnet/synset.rb:804:in `pointers'
/Users/ged/source/ruby/WordNet/lib/wordnet/synset.rb:803:in `pointers'
/usr/lib/ruby/1.8/sync.rb:229:in `synchronize'
/Users/ged/source/ruby/WordNet/lib/wordnet/synset.rb:802:in `pointers'
/usr/lib/ruby/1.8/sync.rb:229:in `synchronize'
/Users/ged/source/ruby/WordNet/lib/wordnet/synset.rb:801:in `pointers'
experiments/unhandled_pointer_types.rb:23
---------------------------------------------------------------------------
Change History
Note: See
TracTickets for help on using
tickets.
