Difference between revisions of "Lua:Class:Stringlist"
Jump to navigation
Jump to search
m |
m (Syntax Highlighting.) |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
[[Category:Lua]] | [[Category:Lua]] | ||
| − | + | {{Class|'''class''' Stringlist ''':''' Strings}} | |
| − | The Stringlist class represents a list of strings | + | The Stringlist class represents a mutable list of strings. |
| − | |||
| − | == | + | It inherits from [[Lua:Class:Strings|Strings]] and adds sorting, duplicate handling, and case-sensitivity behavior. |
| − | {| | + | |
| − | ! | + | ===Inheritance=== |
| − | ! | + | {|width="85%" cellpadding="10%" cellspacing="0" border="0" |
| − | ! | + | !align="left"|Class |
| − | + | !align="left"|Inherits From | |
| − | | | + | !style="width: 80%;background-color:white;" align="left"|Description |
| − | |||
| − | |||
|- | |- | ||
| − | | | + | |Stringlist |
| − | | | + | |Strings |
| − | | | + | |A string list object with sorting and duplicate handling options. |
|- | |- | ||
| − | | | + | |Strings |
| − | | | + | |Object |
| − | | | + | |Base class for string collection objects. |
|} | |} | ||
| − | == | + | ===Creation=== |
| − | {| class=" | + | {{CodeBox|'''function''' createStringlist() ''':''' Stringlist}} |
| − | ! | + | |
| − | ! | + | Creates a Stringlist class object. |
| − | + | ||
| − | ! Description | + | ===Function Parameters=== |
| + | This function has no parameters. | ||
| + | |||
| + | ===Returns=== | ||
| + | Stringlist — The created Stringlist object. | ||
| + | |||
| + | ===Properties=== | ||
| + | {|width="85%" cellpadding="10%" cellspacing="0" border="0" | ||
| + | !align="left"|Property | ||
| + | !align="left"|Type | ||
| + | !style="width: 80%;background-color:white;" align="left"|Description | ||
|- | |- | ||
| − | | | + | |Sorted |
| − | | | + | |Boolean |
| − | | | + | |Determines if the list should be sorted. |
| − | |||
|- | |- | ||
| − | | | + | |Duplicates |
| − | | [[DuplicatesType]] | + | |[[DuplicatesType]] |
| − | | | + | |Determines how duplicates should be handled when the list is sorted. |
| − | |||
|- | |- | ||
| − | | | + | |CaseSensitive |
| − | + | |Boolean | |
| − | | Boolean | + | |Determines if the list is case sensitive. |
| − | | | + | |} |
| + | |||
| + | ===DuplicatesType=== | ||
| + | {|width="85%" cellpadding="10%" cellspacing="0" border="0" | ||
| + | !align="left"|Constant | ||
| + | !align="left"|Value | ||
| + | !style="width: 80%;background-color:white;" align="left"|Description | ||
|- | |- | ||
| − | | | + | |dupIgnore |
| − | | | + | |0 |
| − | | | + | |Ignores duplicate values. |
| − | |||
|- | |- | ||
| − | | | + | |dupAccept |
| − | | | + | |1 |
| − | | | + | |Accepts duplicate values. |
| − | |||
|- | |- | ||
| − | | | + | |dupError |
| − | | | + | |2 |
| − | | | + | |Raises an error when a duplicate value is added. |
| − | |||
|} | |} | ||
| − | == | + | ===Methods=== |
| − | {| | + | {|width="85%" cellpadding="10%" cellspacing="0" border="0" |
| − | ! | + | !align="left"|Method |
| − | ! | + | !align="left"|Return Type |
| − | ! Description | + | !style="width: 80%;background-color:white;" align="left"|Description |
| + | |- | ||
| + | |getDuplicates() | ||
| + | |[[DuplicatesType]] | ||
| + | |Returns the Duplicates property. | ||
| + | |- | ||
| + | |setDuplicates(Duplicates) | ||
| + | |void | ||
| + | |Sets the Duplicates property. Valid values are dupIgnore, dupAccept, and dupError. | ||
|- | |- | ||
| − | | | + | |getSorted() |
| − | | | + | |Boolean |
| − | | | + | |Returns true if the Sorted property is enabled. |
|- | |- | ||
| − | | | + | |setSorted(boolean) |
| − | | | + | |void |
| − | | | + | |Sets the Sorted property. |
|- | |- | ||
| − | | | + | |getCaseSensitive() |
| − | | | + | |Boolean |
| − | | | + | |Returns true if the CaseSensitive property is enabled. |
| + | |- | ||
| + | |setCaseSensitive(boolean) | ||
| + | |void | ||
| + | |Sets the CaseSensitive property. | ||
|} | |} | ||
| + | |||
| + | ===Examples=== | ||
| + | <syntaxhighlight lang="lua" line> | ||
| + | local list = createStringlist() | ||
| + | |||
| + | list.add("Banana") | ||
| + | list.add("Apple") | ||
| + | list.add("Cherry") | ||
| + | |||
| + | list.Sorted = true | ||
| + | |||
| + | for i = 0, list.Count - 1 do | ||
| + | print(list[i]) | ||
| + | end | ||
| + | |||
| + | list.destroy() | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | <syntaxhighlight lang="lua" line> | ||
| + | local list = createStringlist() | ||
| + | |||
| + | list.Sorted = true | ||
| + | list.Duplicates = dupIgnore | ||
| + | |||
| + | list.add("Apple") | ||
| + | list.add("Apple") | ||
| + | list.add("Banana") | ||
| + | |||
| + | for i = 0, list.Count - 1 do | ||
| + | print(list[i]) | ||
| + | end | ||
| + | |||
| + | list.destroy() | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | <syntaxhighlight lang="lua" line> | ||
| + | local list = createStringlist() | ||
| + | |||
| + | list.CaseSensitive = false | ||
| + | list.Sorted = true | ||
| + | list.Duplicates = dupError | ||
| + | |||
| + | list.add("Apple") | ||
| + | |||
| + | local success, err = pcall(function() | ||
| + | list.add("apple") | ||
| + | end) | ||
| + | |||
| + | if not success then | ||
| + | print("Duplicate error: " .. tostring(err)) | ||
| + | end | ||
| + | |||
| + | list.destroy() | ||
| + | </syntaxhighlight> | ||
{{LuaSeeAlso}} | {{LuaSeeAlso}} | ||
| − | |||
| − | |||
| − | |||
| − | |||
Latest revision as of 19:45, 25 June 2026
The Stringlist class represents a mutable list of strings.
It inherits from Strings and adds sorting, duplicate handling, and case-sensitivity behavior.
Contents
Inheritance[edit]
| Class | Inherits From | Description |
|---|---|---|
| Stringlist | Strings | A string list object with sorting and duplicate handling options. |
| Strings | Object | Base class for string collection objects. |
Creation[edit]
Creates a Stringlist class object.
Function Parameters[edit]
This function has no parameters.
Returns[edit]
Stringlist — The created Stringlist object.
Properties[edit]
| Property | Type | Description |
|---|---|---|
| Sorted | Boolean | Determines if the list should be sorted. |
| Duplicates | DuplicatesType | Determines how duplicates should be handled when the list is sorted. |
| CaseSensitive | Boolean | Determines if the list is case sensitive. |
DuplicatesType[edit]
| Constant | Value | Description |
|---|---|---|
| dupIgnore | 0 | Ignores duplicate values. |
| dupAccept | 1 | Accepts duplicate values. |
| dupError | 2 | Raises an error when a duplicate value is added. |
Methods[edit]
| Method | Return Type | Description |
|---|---|---|
| getDuplicates() | DuplicatesType | Returns the Duplicates property. |
| setDuplicates(Duplicates) | void | Sets the Duplicates property. Valid values are dupIgnore, dupAccept, and dupError. |
| getSorted() | Boolean | Returns true if the Sorted property is enabled. |
| setSorted(boolean) | void | Sets the Sorted property. |
| getCaseSensitive() | Boolean | Returns true if the CaseSensitive property is enabled. |
| setCaseSensitive(boolean) | void | Sets the CaseSensitive property. |
Examples[edit]
1 local list = createStringlist()
2
3 list.add("Banana")
4 list.add("Apple")
5 list.add("Cherry")
6
7 list.Sorted = true
8
9 for i = 0, list.Count - 1 do
10 print(list[i])
11 end
12
13 list.destroy()
1 local list = createStringlist()
2
3 list.Sorted = true
4 list.Duplicates = dupIgnore
5
6 list.add("Apple")
7 list.add("Apple")
8 list.add("Banana")
9
10 for i = 0, list.Count - 1 do
11 print(list[i])
12 end
13
14 list.destroy()
1 local list = createStringlist()
2
3 list.CaseSensitive = false
4 list.Sorted = true
5 list.Duplicates = dupError
6
7 list.add("Apple")
8
9 local success, err = pcall(function()
10 list.add("apple")
11 end)
12
13 if not success then
14 print("Duplicate error: " .. tostring(err))
15 end
16
17 list.destroy()