diff options
author | Alexander Harkness <bearbin@gmail.com> | 2013-11-24 15:29:35 +0100 |
---|---|---|
committer | Alexander Harkness <bearbin@gmail.com> | 2013-11-24 15:29:35 +0100 |
commit | 998fb17fdc150bc9c6b3d8da0dd37dfd1ae7b39a (patch) | |
tree | 51c901fdd30ce632107cd69b3df3b107f4cbb6a5 /lib/tolua++/src/bin/lua/namespace.lua | |
parent | Moved zlib (diff) | |
download | cuberite-998fb17fdc150bc9c6b3d8da0dd37dfd1ae7b39a.tar cuberite-998fb17fdc150bc9c6b3d8da0dd37dfd1ae7b39a.tar.gz cuberite-998fb17fdc150bc9c6b3d8da0dd37dfd1ae7b39a.tar.bz2 cuberite-998fb17fdc150bc9c6b3d8da0dd37dfd1ae7b39a.tar.lz cuberite-998fb17fdc150bc9c6b3d8da0dd37dfd1ae7b39a.tar.xz cuberite-998fb17fdc150bc9c6b3d8da0dd37dfd1ae7b39a.tar.zst cuberite-998fb17fdc150bc9c6b3d8da0dd37dfd1ae7b39a.zip |
Diffstat (limited to 'lib/tolua++/src/bin/lua/namespace.lua')
-rw-r--r-- | lib/tolua++/src/bin/lua/namespace.lua | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/lib/tolua++/src/bin/lua/namespace.lua b/lib/tolua++/src/bin/lua/namespace.lua new file mode 100644 index 000000000..6ca80e6e3 --- /dev/null +++ b/lib/tolua++/src/bin/lua/namespace.lua @@ -0,0 +1,52 @@ +-- tolua: namespace class +-- Written by Waldemar Celes +-- TeCGraf/PUC-Rio +-- Jul 2003 +-- $Id: $ + +-- This code is free software; you can redistribute it and/or modify it. +-- The software provided hereunder is on an "as is" basis, and +-- the author has no obligation to provide maintenance, support, updates, +-- enhancements, or modifications. + + +-- Namespace class +-- Represents a namesapce definition. +-- Stores the following fields: +-- name = class name +-- {i} = list of members +classNamespace = { + classtype = 'namespace', + name = '', +} +classNamespace.__index = classNamespace +setmetatable(classNamespace,classModule) + +-- Print method +function classNamespace:print (ident,close) + print(ident.."Namespace{") + print(ident.." name = '"..self.name.."',") + local i=1 + while self[i] do + self[i]:print(ident.." ",",") + i = i+1 + end + print(ident.."}"..close) +end + +-- Internal constructor +function _Namespace (t) + setmetatable(t,classNamespace) + append(t) + return t +end + +-- Constructor +-- Expects the name and the body of the namespace. +function Namespace (n,b) + local c = _Namespace(_Container{name=n}) + push(c) + c:parse(strsub(b,2,strlen(b)-1)) -- eliminate braces + pop() +end + |