<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
                                        
                                        
                                            
                                        
                                        
                                        Hi Levente.<div><br></div><div>Sounds right. If an object can answer to some extra messages via #doesNotUnderstand:, one should also override #respondsTo:. It is like #= and #hash.</div><div><br></div><div>I did not know about #dictionaryClass:. That's a powerful hook.</div><div><br></div><div>Best,</div><div>Marcel</div><div class="mb_sig"></div>
                                        
                                        <blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 09.11.2020 03:07:54 schrieb Levente Uzonyi <leves@caesar.elte.hu>:</p><div style="font-family:Arial,Helvetica,sans-serif">Hi Christoph,<br><br>On Sun, 8 Nov 2020, Christoph Thiede wrote:<br><br>> Hi Levente,<br>><br>> would you mind to merge JSON-ct.41 (#respondsTo:) as well? This would be<br>> great because I depend on this functionality in another project and<br>> currently require your JSON fork in my baseline. :-)<br><br>I cannot merge it because that would bring back long removed methods, and<br>MC wouldn't allow me to reject those.<br>But I can add the changes manually.<br>If I'm not mistaken, it's just a single method JsonObject >> #respondsTo:.<br><br>What is the purpose of that method?<br>I'm asking because it has got no comment, so I'm not sure its <br>implementation is correct.<br>For example, should<br><br>         JsonObject new respondsTo: #foo:<br><br>return false?<br>What should the following return?<br><br>        JsonObject new<br>                foo: 1;<br>               respondsTo: #foo:<br><br>Another question is whether it is generally useful or not?<br>If it's not, you can still have the desired behavior by creating a <br>subclass. E.g.:<br><br>JsonObject subclass: #PseudoObject<br>   instanceVariableNames: ''<br>     classVariableNames: ''<br>        poolDictionaries: ''<br>  category: 'PseudoObject'<br><br><br>PseudoObject >> respondsTo: aSymbol<br><br>     ^ (super respondsTo: aSymbol)<br>                 or: [self includesKey: aSymbol]<br><br><br>(Json new<br>        dictionaryClass: PseudoObject;<br>        readFrom: '{"foo": 42}' readStream)<br>         respondsTo: #foo<br>"==> true"<br><br><br>Levente<br><br>><br>> Best,<br>> Christoph<br>><br>><br>><br>> --<br>> Sent from: http://forum.world.st/Squeak-Dev-f45488.html<br><br></div></blockquote></div>