Abdelrazak Younes <[EMAIL PROTECTED]> writes:

| Andre Poenitz wrote:
| > On Wed, Sep 13, 2006 at 03:40:34PM +0200, Abdelrazak Younes wrote:
| >> I am tempted to convert everything even when a std::string would
| >> suffice. For example getFormatFromContents(), should that be:
| >>
| >> lyx::docstring const getFormatFromContents(lyx::docstring const & name);
| >>
| >> or
| >>
| >> std::string const getFormatFromContents(lyx::docstring const & name);
| >>
| >> I guess the format name could stay with std::string but this would
| >> not bring a big performance advantage. The first solution
| >> (docstring has the advantage that it looks nicer and we won't need
| >> to convert that to docstring if we need to display that format name
| >> somewhere.
| >>
| >> What do you think?
| > I am pro docstring everywhere execpt on the outer rim (i.e. GUI/IO).
| > Too much hassle to keep track of correct usage otherwise.
| 
| You have a (strong) point here and I am close to think the same. Georg
| idea is to encapsulate strings which are really meant for display
| consumption in a class. I suggest that even those would use docstring
| instead of std::string. This is the compromise I can think of: clear
| compilation-time distinction and easy manipulation with other
| docstring if needed.
| 
|       class KeyString
|       {
|       public:
|               typedef lyx::docstring name_type;
|       };
| 
| In the format case, this would mean:
| 
|       class Format: public KeyString {};
| 
| For the menu backend and the dialogs this could be
| 
| class MenuId: public KeyString {};
| 
|       class DialogId: public KeyString {};
| 
| 
| We need to take a decision now!

No we don't.
We are not in such a hurry.
 
| Please speak-up if you don't agree with that.

I am not sure that I agree with Andre (or you) that we have to use
docstring all over internally.

Neither am I sure it is wise to introduce a myriad of "new" string
types.

-- 
        Lgb

Reply via email to