Explain it right here
PLists are arbitrary combinations of dictionary, list, and strings.
to encode a string - if its a token (only letters, numbers, and maybe dot) just write it. If it has any other character encode it like a C style string constant (\\n\\r\\t\\ \\"are the main escapes) and put it in double quotes.
to encode a list its ( item1, item2, item3 )
where item[123] is any plist element
to encode a dictionary its { key1 = value1; key2 = value2; }
where key[12] and value[12] is any valid plist element.
Thats it. I have a java class that does this - if you want I can sent it to you and you can port it to C++.
The interface is a stream. PList.write(aPlistObject); and object = PList.read(aStream);
Two functions. Very simple to write. Express any structure in the world. Human readable.
Smalltalk is dangerous. It is a drug. My advice to you would be don't try it; it could ruin your life. Once you take the time to learn it (to REALLY learn it) you will see that there is nothing out there (yet) to touch it. Of course, like all drugs, how dangerous it is depends on your character. It may be that once you've got to this stage you'll find it difficult (if not impossible) to "go back" to other languages and, if you are forced to, you might become an embittered character constantly muttering ascerbic comments under your breath. Who knows, you may even have to quit the software industry altogether because nothing else lives up to your new expectations.
--AndyBower
Explain it right here
PLists are arbitrary combinations of dictionary, list, and strings.
to encode a string - if its a token (only letters, numbers, and maybe dot) just write it. If it has any other character encode it like a C style string constant (\n\r\t\ \"are the main escapes) and put it in double quotes.
to encode a list its ( item1, item2, item3 )
where item[123] is any plist element
to encode a dictionary its { key1 = value1; key2 = value2; }
where key[12] and value[12] is any valid plist element.
Thats it. I have a java class that does this - if you want I can sent it to you and you can port it to C++.
The interface is a stream. PList.write(aPlistObject); and object = PList.read(aStream);
Two functions. Very simple to write. Express any structure in the world. Human readable.
Smalltalk is dangerous. It is a drug. My advice to you would be don't try it; it could ruin your life. Once you take the time to learn it (to REALLY learn it) you will see that there is nothing out there (yet) to touch it. Of course, like all drugs, how dangerous it is depends on your character. It may be that once you've got to this stage you'll find it difficult (if not impossible) to "go back" to other languages and, if you are forced to, you might become an embittered character constantly muttering ascerbic comments under your breath. Who knows, you may even have to quit the software industry altogether because nothing else lives up to your new expectations.
--AndyBower