Module:StringBuilder/doc: Difference between revisions

From Melvor Idle
No edit summary
No edit summary
Line 1: Line 1:
== `StringBuilder` Module Documentation ==
==StringBuilder Module Documentation ==


The `StringBuilder` module provides functionality to efficiently build and manipulate strings in Lua.
The <code>StringBuilder</code> module provides functionality to efficiently build and manipulate strings in Lua.


=== Constructor ===
=== Constructor ===


'''`StringBuilder.new()`'''
'''<code>StringBuilder.new()</code>'''


Creates a new `StringBuilder` object.
Creates a new <code>StringBuilder</code> object.


* '''Returns:''' `StringBuilder` object.
* '''Returns:''' <code>StringBuilder</code> object.


=== Methods ===
=== Methods ===


'''`StringBuilder:append(...)`'''
'''<code>StringBuilder:append(...)</code>'''


Appends strings or values to the `StringBuilder` buffer.
Appends strings or values to the <code>StringBuilder</code> buffer.


* '''Parameters:'''
* '''Parameters:'''
   * `...`: One or more values to append to the buffer.
   * '...': One or more values to append to the buffer.


'''`StringBuilder:appendLine(...)`'''
'''<code>StringBuilder:appendLine(...)</code>'''


Appends strings or values followed by a newline (`\n`) to the `StringBuilder` buffer.
Appends strings or values followed by a newline (<code>\n</code>) to the <code>StringBuilder</code> buffer.


* '''Parameters:'''
* '''Parameters:'''
   * `...`: One or more values to append to the buffer.
   * '...': One or more values to append to the buffer.


'''`StringBuilder:clear()`'''
'''<code>StringBuilder:clear()</code>'''


Clears the contents of the `StringBuilder` buffer.
Clears the contents of the <code>StringBuilder</code> buffer.


* '''Usage:''' Call this method to reset the `StringBuilder` buffer to an empty state.
* '''Usage:''' Call this method to reset the <code>StringBuilder</code> buffer to an empty state.


'''`StringBuilder:toString()`'''
'''<code>StringBuilder:toString()</code>'''


Converts the `StringBuilder` buffer into a concatenated string.
Converts the <code>StringBuilder</code> buffer into a concatenated string.


* '''Returns:''' Concatenated string representation of the `StringBuilder` buffer.
* '''Returns:''' Concatenated string representation of the <code>StringBuilder</code> buffer.


=== Example Usage ===
=== Example Usage ===


To use the `StringBuilder` module in your Lua scripts, follow these examples:
To use the <code>StringBuilder</code> module in your Lua scripts, follow these examples:
 


<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">

Revision as of 21:13, 13 April 2024

StringBuilder Module Documentation

The StringBuilder module provides functionality to efficiently build and manipulate strings in Lua.

Constructor

StringBuilder.new()

Creates a new StringBuilder object.

  • Returns: StringBuilder object.

Methods

StringBuilder:append(...)

Appends strings or values to the StringBuilder buffer.

  • Parameters:
 * '...': One or more values to append to the buffer.

StringBuilder:appendLine(...)

Appends strings or values followed by a newline (\n) to the StringBuilder buffer.

  • Parameters:
 * '...': One or more values to append to the buffer.

StringBuilder:clear()

Clears the contents of the StringBuilder buffer.

  • Usage: Call this method to reset the StringBuilder buffer to an empty state.

StringBuilder:toString()

Converts the StringBuilder buffer into a concatenated string.

  • Returns: Concatenated string representation of the StringBuilder buffer.

Example Usage

To use the StringBuilder module in your Lua scripts, follow these examples:


local StringBuilder = require("StringBuilder")

-- Create a new StringBuilder object
local sb = StringBuilder.new()

-- Append strings and values to the StringBuilder buffer
sb:append("Hello, ")
  :append("world!")
sb:append(123)

-- Append a new line and more content
sb:appendLine("This is a new line.")

-- Convert StringBuilder buffer to a string
local result = sb:toString()

-- Output the result
print(result)  -- Output: "Hello, world!123\nThis is a new line."