Print

Print


Daniel

I didn't suggest forcing pure virtual if not needed.
Removing the work "abstract" is perfectly fine. I'll
remove the word abstract for QueryPlugin, and, ok
I won't touch the ColumnRef

Jacek


On 03/31/2014 06:41 PM, Daniel L. Wang wrote:
> On 03/31/2014 05:02 PM, Becla, Jacek wrote:
>> Daniel
>>
>> I noticed several classes have "abstract" in description,
>> but they are not really abstract (no pure virtual function)
>>
>>
>> /// Factory is an abstract class for specific QueryPlugin Factories
> If it bothers you, you can take out 'abstract' and call it an interface
> (which annoys Java people, I'm sure). It has default implementations
> because I had bad memories of vptr compiler/linker messages when I wrote
> this.
>
>
>> /// ColumnRef is an abstract value class holding a parsed single column ref
> Well, "abstract value class" is a term I borrowed from David Cheriton,
> and describes a class for values with no real behavior (other than
> convenience constructors), no private data, and should never be
> inherited. I am not sure if anyone other than him and those who have
> worked with him use that term.
>
>> We should either fix these comments, or turn them into real abstract
>> class. Can you?
> Please do not change the abstract value classes into pure virtual
> classes. They would be absolutely useless. Can you think of a better
> term for a "bundle of values with no behavior that should never be
> inherited from"?
>
> I don't mind removing 'abstract' from QueryPlugin::Factory, though.
>
> -Daniel
>
>

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the QSERV-L list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=QSERV-L&A=1