Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail From: Gene Wirchenko Newsgroups: comp.lang.java.programmer Subject: Re: Passing a Method Name to a Method Date: Thu, 23 Jun 2011 14:40:15 -0700 Organization: A noiseless patient Spider Lines: 47 Message-ID: References: <81h4075t4gfjglji1n033rb20025ebho68@4ax.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Injection-Info: mx04.eternal-september.org; posting-host="7Qrvczazr82YckO5XW8Vtw"; logging-data="15670"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18GQ0OIoH9C+oV9HKRL3U+Hn52EQIRDcqQ=" X-Newsreader: Forte Agent 4.2/32.1118 Cancel-Lock: sha1:jm9C+8SATxZl0ALfBB8xr4ZK72o= Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:5602 On Wed, 22 Jun 2011 16:00:46 -0400, "Fuschia, President-Elect of the Bright Purplish-Green Council" wrote: >On 22/06/2011 3:46 PM, Gene Wirchenko wrote: >> Dear Jav'ers: >> >> Maybe I will find this after searching more, but so far, no good. >> >> I want to pass a parameter of a method name to another method. >> >> N.B.: I do not want to pass the method name as a string. I want >> to pass it as a pointer / reference / whatever term is used for this >> in Java. > >Unfortunately, you can't do this easily or efficiently (you'd need to >use the Reflection API's Method objects) in Java; what you really want >is a functional language like Clojure or Scala. > >If you really must use Java, define an interface that ThisWay and >ThatWay can be instances of and which specify a parse method, and pass >an instance to the parser class's method. (The so-called "strategy >pattern".) The reason why I want to do this is to check speed of implementations in Java. Obviously, I have to use Java to test Java impementations. I am writing a preprocessor and need to implement a simple parser. It has to recognise identifiers. The characters allowed for identifiers vary from language to language. I have the character set configurable. The question is which is the best way to implement the function that returns whether an input character is in the set of identifier characters. There are three ways that I want to test: Stuff them in a String and access sequentially. Stuff them in a String and access with a binary search. Stuff them in a Treeset. The outer parser code will be the same. The only difference will be which character-checking method will be called. I suppose I am going to end up doing cut-and-paste to make my test program. Sincerely, Gene Wirchenko