Skip to content

Instantly share code, notes, and snippets.

@menjaraz
Forked from delphidabbler/UBox.pas
Created January 5, 2018 09:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save menjaraz/b97def4df377f7a4a7c9730bd50ec668 to your computer and use it in GitHub Desktop.
Save menjaraz/b97def4df377f7a4a7c9730bd50ec668 to your computer and use it in GitHub Desktop.
A generic Delphi class that can wrap any type in an object. Designed for use in wrapping value types and strings in objects. Extracted from my CodeSnip project (http://codesnip.delphidabbler.com/)
unit UBox;
interface
type
/// <summary>Generic class that wraps a type in an object.</summary>
/// <remarks>Although this type can be used to wrap any type it is aimed at
/// wrapping value types and strings.</remarks>
TBox<T> = class(TObject)
strict private
var
/// <summary>Value of Value property.</summary>
fValue: T;
public
/// <summary>Constructs an object that wraps the specified value.</summary>
constructor Create(Value: T);
/// <summary>Value wrapped by object.</summary>
property Value: T read fValue;
end;
implementation
{ TBox<T> }
constructor TBox<T>.Create(Value: T);
begin
fValue := Value;
end;
end.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment