RealSense.BBCode 2.0.0

.NET Standard 2.0
dotnet add package RealSense.BBCode --version 2.0.0
NuGet\Install-Package RealSense.BBCode -Version 2.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RealSense.BBCode" Version="2.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RealSense.BBCode --version 2.0.0
#r "nuget: RealSense.BBCode, 2.0.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install RealSense.BBCode as a Cake Addin
#addin nuget:?package=RealSense.BBCode&version=2.0.0

// Install RealSense.BBCode as a Cake Tool
#tool nuget:?package=RealSense.BBCode&version=2.0.0

Class Structure:

IBBSegment                  An interface that represents a section of text or code
|
+-- BBStatic                A Base Class for portions of text that doesn't include BB Codes
|   |
|   +-- BBStaticText        Portion of static text (typically requires HttpEncoding)
|   |
|   +-- BBNewLine           Represents a New Line character (singleton instance: use BBNewLine.Create())
|
+-- BBCodeInstance	       Represents a BBCode.  Holds the actual Tag used, the IBBCode and a SegmentCollection for any subitems (if allowed)


Calling application can implement additional tags as follows:

1) Create classes that implement the IBBCode interface
2) Register the type with BBParser.Register() specifying the tag to associate.

You can multiple tags with the same class instance
You can unregister tags and register your own replacements

Default IBBCode Interface implementations:

   +-- BBCodeB             Represents a Bold sequence
   |
   +-- BBCodeI             Represents an Italisied sequence
   |
   +-- BBCodeU             Represents an Underlined sequence
   |
   +-- BBCodeURL           Represents a URL link
   |
   +-- BBCodeQuote         Represents a Block Quote
   |
   +-- BBCodeCode          Represents some code
   |
   +-- BBCodeS             Represents some stikethrough text
   |
   +-- BBCodeList          Represents an <ol> or <ul> (optional parameter can be { 1,A,a,I,i }
   |
   +-- BBCodeLI            Represents an <li>
   |
   +-- BBCodeTable         Represents a <table>
   |
   +-- BBCodeTR            Represents a <tr>
   |
   +-- BBCodeTH            Represents a <th>
   |
   +-- BBCodeTD            Represents a <td>

Version Information

v02 | 2015-05-27 | Chris Walsh Ran through Resharper Tool in 2015-05-27 and removed all items. Vastly restricted public interface without losing functionality (e.g. allowing external codes to be registered and unhandled codes to be delegated back) Scope for improvement in allowing certain BBCodes to use a singleton rather than instantiation, maybe by a Create method to be implemented.

v03 | 2017-03-23 | Chris Walsh Migrated to a nuget package. Changed the namespace to RealSense.BBCode.
Changed IBBCode properties AllowedCodes and AllowedParents from Type[] to ReadOnlyTypeCollection so that calling applications cannot modify the list.

v04 | 2019-08-13 | Chris Walsh Migrated to .NET Standard 2.0.

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows
.NET Core netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Standard netstandard2.0 netstandard2.1
.NET Framework net461 net462 net463 net47 net471 net472 net48
MonoAndroid monoandroid
MonoMac monomac
MonoTouch monotouch
Tizen tizen40 tizen60
Xamarin.iOS xamarinios
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.
  • .NETStandard 2.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.0.0 511 8/13/2019
1.0.2 922 5/3/2017
1.0.1 772 3/23/2017
1.0.0 743 3/23/2017

This version is compiled to .NET Standard 2.0.