lazarus/components/codetools/tests/moduletests/fdt_nestedaliasclass.pas

55 lines
1.0 KiB
ObjectPascal

{
./testcodetools --format=plain --suite=TestFindDeclaration_NestedClasses
}
unit fdt_nestedaliasclass;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils;
type
TBird = class
public type
TBirdWing = class
public
Span: word;
procedure Fly; virtual;
end;
end;
TEagle = class(TBird)
public type
TAliasBirdWing = TBirdWing{declaration:fdt_nestedaliasclass.TBird.TBirdWing};
TEagleWing = class(TAliasBirdWing{declaration:fdt_nestedaliasclass.TEagle.TAliasBirdWing})
public
procedure Fly{declaration:fdt_nestedaliasclass.TBird.TBirdWing.Fly}; override;
end;
end;
implementation
{ TBird.TBirdWing }
procedure TBird.TBirdWing.Fly;
begin
end;
{ TEagle.TEagleWing }
procedure TEagle.TEagleWing.Fly;
begin
//Span{declaration:fdt_nestedaliasclass.TBird.TBirdWing.Span}:=3;
end;
var
Wing: TEagle.TEagleWing;
begin
Wing:=TEagle.TEagleWing{declaration:fdt_nestedaliasclass.TEagle.TEagleWing}.Create;
// Wing.Fly{declaration:fdt_nestedaliasclass.TEagle.TEagleWing.Fly};
end.