Difference between revisions of "Lua:Class:Stringlist"
Jump to navigation
Jump to search
m (moved Stringlist to Lua:Class:Stringlist) |
m (Syntax Highlighting.) |
||
| (3 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
[[Category:Lua]] | [[Category:Lua]] | ||
| − | Stringlist | + | {{Class|'''class''' Stringlist ''':''' 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=== | ||
| + | {{CodeBox|'''function''' createStringlist() ''':''' Stringlist}} | ||
| + | |||
| + | Creates a Stringlist class object. | ||
| + | |||
| + | ===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]] | ||
| + | |Determines how duplicates should be handled when the list is sorted. | ||
| + | |- | ||
| + | |CaseSensitive | ||
| + | |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 | ||
| + | !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()