On 10.01.2011 17:50, Razvan Adrian Bogdan wrote:
On Mon, Jan 10, 2011 at 6:43 AM, Andrew Brunner
<[email protected] <mailto:[email protected]>> wrote:

    type
      ns=class
      Type
         Vendor=class
         Const
           id    = "ITMID';
           Size = 'ITMSIZE';
         Type
            PVendor=^TVendor;
            TVendor=record
              ID : Int64;
              Size : Integer;
            end;
            class procedure Foo();
         end;
         Supplier=class
             // example
            class procedure Foo();
         end;
      end;
    end;

    Neither ns.Supplier.Foo() nor ns.Vendor.Foo() will not jump to the
    actual code in Lazarus IDE.  It kind of muddles nested classes (as
    namespaces) that FPC supports.  Is this on someones list of todos?

Interesting stuff, it's like nested records, but wouldn't this look
nicer if the "type" keyword was optional, maybe only required where
there is not keyword like class or record ? This looks like a nice
feature but it shouldn't make code less readable by requiring keywords
that only make the source more ugly.

In Pascal all type declarations appear in blocks that are named "type". This is the case in global unit scope, in local method scope and in class scope as well. So I don't think one should brake with the way Pascal works just to create code that looks more beautiful.

And this is also Delphi compatible.

Regards,
Sven

--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to