Difference between revisions of "Types"

m (Zorg moved page Category:Data Types to Types: Consistency reasons, also would be nice to have a simple list of types.)
(Edited in types. Not the best way, but at least it's somewhat readable... even if descriptions are missing from all over the place.)
Line 2: Line 2:
  
 
== Types ==
 
== Types ==
{{#ask: [[Category:Types]] [[parent::love || parent::lua]] [[Concept:Current]]
+
=== Lua Types ===
| headers=hide
+
You can use the '''type''' function to get the type of a variable.
| format=template
+
{{param|nil||Denotes the lack of a value. Only 'nil' has the type 'nil'.}}
| template=ListingFields
+
{{param|boolean||Denotes a logical value. Can be 'true' or 'false'.}}
| introtemplate=ListingIntro
+
{{param|number||Denotes a double-precision floating-point value. Includes infinities and not-a-numbers.}}
| outrotemplate=ListingOutro
+
{{param|string||Denotes an array of characters; immutable.}}
| ?Description
+
{{param|table||Denotes a combined numerical-array and hash-table.}}
| ?PrettySince
+
{{param|function||Denotes a callable function.}}
| ?PrettyRemoved
+
{{param|userdata||Denotes arbitrary C data.}}
}}
+
{{param|thread||Denotes coroutines.}}
 +
=== Löve Types ===
 +
{{param|Data||Superclass of the below types.}}
 +
{{param|CompressedData||Holds arbitrary compressed data.}}
 +
{{param|CompressedImageData||Holds compressed image data.}}
 +
{{param|FileData||Holds file data.}}
 +
{{param|FontData||Holds font data.}}
 +
{{param|GlyphData||Holds glyph data.}}
 +
{{param|ImageData||Holds image data.}}
 +
{{param|SoundData||Holds sound data.}}
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
{{param|Object||Superclass of the below types.}}
 +
 
 +
Math
 +
{{param|BezierCurve||}}
 +
{{param|RandomGenerator||}}
 +
 
 +
Physics
 +
{{param|Body||}}
 +
{{param|Contact||}}
 +
{{param|Fixture||}}
 +
{{param|World||}}
 +
 
 +
 
 +
 
 +
{{param|Shape||}}
 +
{{param|ChainShape||}}
 +
{{param|CircleShape||}}
 +
{{param|EdgeShape||}}
 +
{{param|PolygonShape||}}
 +
 
 +
 
 +
 
 +
{{param|Joint||}}
 +
{{param|FrictionJoint||}}
 +
{{param|GearJoint||}}
 +
{{param|MotorJoint||}}
 +
{{param|MouseJoint||}}
 +
{{param|PrismaticJoint||}}
 +
{{param|PulleyJoint||}}
 +
{{param|RevoluteJoint||}}
 +
{{param|RopeJoint||}}
 +
{{param|WeldJoint||}}
 +
{{param|WheelJoint||}}
 +
 
 +
Thread
 +
{{param|Channel||}}
 +
{{param|Thread||}}
 +
 
 +
Graphics
 +
{{param|Cursor||}}
 +
{{param|PixelEffect||Deprecated version of Shader type.}}
 +
{{param|Shader||}}
 +
{{param|Quad||}}
 +
 
 +
 
 +
 
 +
{{param|Drawable||}}
 +
 
 +
{{param|Texture||}}
 +
 
 +
{{param|Canvas||}}
 +
{{param|Framebuffer||Deprecated version of Canvas type.}}
 +
{{param|Image||}}
 +
 
 +
 
 +
 
 +
{{param|Mesh||}}
 +
{{param|ParticleSystem||}}
 +
{{param|SpriteBatch||}}
 +
{{param|Text||}}
 +
{{param|Video||}}
 +
 
 +
Sound
 +
{{param|Decoder||}}
 +
{{param|Source||}}
 +
{{param|QueuableSource||}}
 +
 
 +
Filesystem
 +
{{param|File||}}
 +
 
 +
Fonts
 +
{{param|Font||}}
 +
{{param|Rasterizer||}}
 +
 
 +
Input
 +
{{param|Joystick||}}
 +
 
 +
Video
 +
{{param|VideoStream||}}
 +
 
 +
=== Semantic (Wiki) Types ===
 +
{{param|table|flat table|Denotes a combined numerical-array and hash-table that does not have any table values inside it.}}
 +
{{param|Variant||Can be a flat table, a boolean, a number, a string, or a LÖVE userdata.}}
 +
 
 +
=== Other ===
 +
LUBE
 +
{{param|ClientObject||}}
 +
{{param|ServerObject||}}
 +
Enet
 +
{{param|enet.host||}}
 +
{{param|enet.peer||}}

Revision as of 20:13, 1 February 2017

These are the data types that are used by this wiki; some of them are wiki-specific aggregates for clearer documentation reasons.

Types

Lua Types

You can use the type function to get the type of a variable.

nil
Denotes the lack of a value. Only 'nil' has the type 'nil'.
boolean
Denotes a logical value. Can be 'true' or 'false'.
number
Denotes a double-precision floating-point value. Includes infinities and not-a-numbers.
string
Denotes an array of characters; immutable.
table
Denotes a combined numerical-array and hash-table.
function
Denotes a callable function.
userdata
Denotes arbitrary C data.
thread
Denotes coroutines.

Löve Types

Data
Superclass of the below types.
CompressedData
Holds arbitrary compressed data.
CompressedImageData
Holds compressed image data.
FileData
Holds file data.
FontData
Holds font data.
GlyphData
Holds glyph data.
ImageData
Holds image data.
SoundData
Holds sound data.




Object
Superclass of the below types.

Math

BezierCurve
RandomGenerator

Physics

Body
Contact
Fixture
World


Shape
ChainShape
CircleShape
EdgeShape
PolygonShape


Joint
FrictionJoint
GearJoint
MotorJoint
MouseJoint
PrismaticJoint
PulleyJoint
RevoluteJoint
RopeJoint
WeldJoint
WheelJoint

Thread

Channel
Thread

Graphics

Cursor
PixelEffect
Deprecated version of Shader type.
Shader
Quad


Drawable
Texture
Canvas
Framebuffer
Deprecated version of Canvas type.
Image


Mesh
ParticleSystem
SpriteBatch
Text
Video

Sound

Decoder
Source
QueuableSource

Filesystem

File

Fonts

Font
Rasterizer

Input

Joystick

Video

VideoStream

Semantic (Wiki) Types

table flat table
Denotes a combined numerical-array and hash-table that does not have any table values inside it.
Variant
Can be a flat table, a boolean, a number, a string, or a LÖVE userdata.

Other

LUBE

ClientObject
ServerObject

Enet

enet.host
enet.peer