clarify comments, change bracket positions

This commit is contained in:
David Rose 2005-01-07 02:33:58 +00:00
parent 038232e506
commit 544f7273ad

View File

@ -27,16 +27,16 @@ dclass DistributedObject {
// The uint8[] syntax replaces the old uint8array type. All of the // The uint8[] syntax replaces the old uint8array type. All of the
// old hard-coded array types are now deprecated in favor of C-style // old hard-coded array types are now deprecated in favor of C-style
// array definitions. // array definitions.
setPropertiesList(uint8[] properties); setPropertiesList(uint8 properties[]);
}; };
// You can also define C-style structs. This is really the same thing // You can also define C-style structs. This is really the same thing
// as a dclass, except it can be embedded in a message rather than // as a dclass, except it can be embedded in a message rather than
// created as an object in its own right. The struct may or may not // created as an object in its own right. The struct may or may not
// have a Python representation in one of the imported modules. If // correspond with a Python class of the same name. If the struct
// the struct has a Python representation, an instance of that object // does have a Python representation, an instance of that class is
// is created and passed in to functions that receive this kind of // created and passed in to functions that receive this kind of
// parameter; otherwise, a tuple with all of the fields is passed // parameter; otherwise, a tuple with all of the fields is passed
// instead. // instead.
@ -51,8 +51,9 @@ struct AvatarObject {
int8 code = 0; int8 code = 0;
// You can also define "methods" on a struct, just as on a dclass. // You can also define "methods" on a struct, just as on a dclass.
// This implies the existence of the corresponding getObjectCode() // This implies the existence of the corresponding get method
// method to query the information at generate time. // (e.g. getObjectCode() in this case) method, to query the
// information at generate time.
setObjectCode(int8(0-50) code, DoId player); setObjectCode(int8(0-50) code, DoId player);
}; };
@ -63,11 +64,11 @@ dclass DistributedObjectHolder : DistributedObject {
// You can also have an array of structs. This specifies a // You can also have an array of structs. This specifies a
// fixed-length array of five elements. // fixed-length array of five elements.
setObjectList(AvatarObject[5] objectArray); setObjectList(AvatarObject objectArray[5]);
// In addition to fixed-length arrays and unbounded arrays, you can // In addition to fixed-length arrays and unbounded arrays, you can
// specify a range for the valid size of the array: // specify a range for the valid size of the array:
setRelatedObjects(AvatarObject[0, 3 - 5] relatedObjects = []) setRelatedObjects(AvatarObject relatedObjects[0, 3 - 5] = [])
}; };
// You can specify a default initial value on the typedef, if you // You can specify a default initial value on the typedef, if you
@ -76,8 +77,13 @@ dclass DistributedObjectHolder : DistributedObject {
typedef uint8(0-25) DNAColor = 1; typedef uint8(0-25) DNAColor = 1;
struct AvatarDNA { struct AvatarDNA {
// This defines a character element that can be any one of the three
// specified. (It is similar to the uint8 range restrictions,
// below.)
char('a','q','x') type; char('a','q','x') type;
// These specify one-byte numeric elements that can be any of the
// values in the specified ranges.
uint8(0-10) torsoIndex; uint8(0-10) torsoIndex;
uint8(0-5) headIndex; uint8(0-5) headIndex;
uint8(0-4) legsIndex; uint8(0-4) legsIndex;
@ -102,11 +108,14 @@ struct AvatarDNA {
DNAColor shortsColor; DNAColor shortsColor;
}; };
// Nested structure references.
DNAColor armColor; DNAColor armColor;
DNAColor headColor; DNAColor headColor;
}; };
dclass DistributedAvatar { dclass DistributedAvatar {
// An example of defining the default value for a complex nested
// field, like the above.
setDNA(AvatarDNA dna = {'a', 1, 2, 3, { 1, 0, 1, 0, 1 }, 1, 1 }) required broadcast db; setDNA(AvatarDNA dna = {'a', 1, 2, 3, { 1, 0, 1, 0, 1 }, 1, 1 }) required broadcast db;
}; };