ユニットが使用しているシンボルの一覧を出力する
概要
「--symbol-report」オプションを使うことで、各ユニットが使用しているシンボルの一覧を.symbol_reportファイルとして出力できるようになります。
方法
「プロジェクトオプション」の「コンパイラに渡す追加オプション」に「--symbol-report」を指定します。
正しく指定されていれば、ビルド後にユニットの出力ディレクトリに対して.symbol_reportファイルが生成されます。
サンプル
新規フォームを生成し、そのままビルドを行った場合、このようなファイルが生成されます。
<?xml version="1.0" encoding="UTF-8"?> <unit name="Unit1"> <uses name="Vcl.Dialogs"> </uses> <uses name="Vcl.Forms"> <symbol name="TForm"/> <symbol name="TCustomForm.AlignControls"/> <symbol name="TCustomForm.ClientWndProc"/> <symbol name="TCustomForm.CreateParams"/> <symbol name="TCustomForm.CreateWindowHandle"/> <symbol name="TCustomForm.CreateWnd"/> <symbol name="TCustomForm.DefineProperties"/> <symbol name="TCustomForm.DestroyHandle"/> <symbol name="TCustomForm.DestroyWindowHandle"/> <symbol name="TCustomForm.DoCreate"/> <symbol name="TCustomForm.DoDestroy"/> <symbol name="TCustomForm.DoThumbButtonNotify"/> <symbol name="TCustomForm.DoWindowPreviewRequest"/> <symbol name="TCustomForm.DoThumbPreviewRequest"/> <symbol name="TCustomForm.GetClientRect"/> <symbol name="TCustomForm.GetFloating"/> <symbol name="TCustomForm.Loaded"/> <symbol name="TCustomForm.Notification"/> <symbol name="TCustomForm.PaintWindow"/> <symbol name="TCustomForm.GetDesignDpi"/> <symbol name="TCustomForm.ScaleForCurrentDpi"/> <symbol name="TCustomForm.ReadState"/> <symbol name="TCustomForm.RequestAlign"/> <symbol name="TCustomForm.SetParentBiDiMode"/> <symbol name="TCustomForm.SetParent"/> <symbol name="TCustomForm.UpdateActions"/> <symbol name="TCustomForm.ValidateRename"/> <symbol name="TCustomForm.WndProc"/> <symbol name="TCustomForm.Resizing"/> <symbol name="TCustomForm.QueryInterface"/> <symbol name="TCustomForm.Create"/> <symbol name="TCustomForm.CreateNew"/> <symbol name="TCustomForm.Destroy"/> <symbol name="TCustomForm.ScaleForPPI"/> <symbol name="TCustomForm.CloseQuery"/> <symbol name="TCustomForm.DefaultHandler"/> <symbol name="TCustomForm.SetFocus"/> <symbol name="TCustomForm.SetFocusedControl"/> <symbol name="TCustomForm.ShowModal"/> <symbol name="TCustomForm.WantChildKey"/> <symbol name="TCustomForm.AfterConstruction"/> <symbol name="TCustomForm.BeforeDestruction"/> <symbol name="TScrollingWinControl.AdjustClientRect"/> <symbol name="TScrollingWinControl.AutoScrollEnabled"/> <symbol name="TScrollingWinControl.AutoScrollInView"/> <symbol name="TScrollingWinControl.DoGesture"/> <symbol name="TScrollingWinControl.DoGetGestureOptions"/> <symbol name=".TForm"/> </uses> <uses name="Vcl.Controls"> <symbol name="TWinControl.UpdateStyleElements"/> <symbol name="TWinControl.AsyncSchedule"/> <symbol name="TWinControl.AssignTo"/> <symbol name="TWinControl.CanAutoSize"/> <symbol name="TWinControl.CanResize"/> <symbol name="TWinControl.ConstrainedResize"/> <symbol name="TWinControl.CreateHandle"/> <symbol name="TWinControl.CustomAlignInsertBefore"/> <symbol name="TWinControl.CustomAlignPosition"/> <symbol name="TWinControl.DestroyWnd"/> <symbol name="TWinControl.DockReplaceDockClient"/> <symbol name="TWinControl.GetClientOrigin"/> <symbol name="TWinControl.GetControlExtents"/> <symbol name="TWinControl.GetDeviceContext"/> <symbol name="TWinControl.ResetIme"/> <symbol name="TWinControl.ScaleControlsForDpi"/> <symbol name="TWinControl.SetIme"/> <symbol name="TWinControl.SetParentBackground"/> <symbol name="TWinControl.SetParentDoubleBuffered"/> <symbol name="TWinControl.ShowControl"/> <symbol name="TWinControl.UpdateControlOriginalParentSize"/> <symbol name="TWinControl.UpdateTIPStatus"/> <symbol name="TWinControl.Invalidate"/> <symbol name="TWinControl.Repaint"/> <symbol name="TWinControl.SetBounds"/> <symbol name="TWinControl.Update"/> <symbol name="TControl.GetParentCurrentDpi"/> <symbol name="TControl.CreateTouchManager"/> <symbol name="TControl.GetAction"/> <symbol name="TControl.GetEnabled"/> <symbol name="TControl.GetFloatingDockSiteClass"/> <symbol name="TControl.DefaultScalingFlags"/> <symbol name="TControl.SetAutoSize"/> <symbol name="TControl.SetDragMode"/> <symbol name="TControl.SetEnabled"/> <symbol name="TControl.SetName"/> <symbol name="TControl.SetBiDiMode"/> <symbol name="TControl.SetStyleElements"/> <symbol name="TControl.GetDragImages"/> <symbol name="TControl.InitiateAction"/> </uses> <uses name="Vcl.Graphics"> </uses> <uses name="System.Classes"> <symbol name="TComponent.CanObserve"/> <symbol name="TComponent.ObserverAdded"/> <symbol name="TComponent.GetObservers"/> <symbol name="TComponent.UpdateRegistry"/> <symbol name="TComponent.WriteState"/> <symbol name="TComponent.SafeCallException"/> <symbol name="TComponent.UpdateAction"/> <symbol name="TPersistent.Assign"/> </uses> <uses name="System.Variants"> </uses> <uses name="System.SysUtils"> </uses> <uses name="Winapi.Messages"> </uses> <uses name="Winapi.Windows"> </uses> <uses name="SysInit"> </uses> <uses name="System"> <symbol name="TObject.Equals"/> <symbol name="TObject.GetHashCode"/> <symbol name="TObject.ToString"/> <symbol name="TObject.Dispatch"/> <symbol name="TObject.NewInstance"/> <symbol name="TObject.FreeInstance"/> </uses> </unit>