Alexander Larsson
32481bf381
marshaller: Make @nonnull a propagated attribute
...
This cleans up some stuff
2012-03-20 15:25:47 +01:00
Alexander Larsson
f22381505d
marshaller: Make @c_ptr a propagated attribute
...
This simplifies some code
2012-03-20 15:25:47 +01:00
Alexander Larsson
fefc89c6c4
marshaller: Add generic way to handle propagating attributes
...
Also switches @ptr_array to use this
2012-03-20 15:25:47 +01:00
Gerd Hoffmann
6228ae633e
Properly parse and marshall SpiceString
2012-03-20 15:25:46 +01:00
Alexander Larsson
6d38c4817f
Simplify SpiceLineAttr by removing unsed stuff
...
Also in new protocol don't send style data if not needed.
2012-03-20 15:25:46 +01:00
Alexander Larsson
02a429e46e
Support @marshall to automatically marshall pointers
2012-03-20 15:25:46 +01:00
Alexander Larsson
1d5d5272e2
Make pointers 32bit in new protocol format
2012-03-20 15:25:45 +01:00
Alexander Larsson
db5b8fa673
marshaller: Correctly determine if switches are fixed size
...
Switches are fixed size only if all cases have the same size *and*
it has a default case or all the valid cases are listed.
2012-03-20 15:25:45 +01:00
Alexander Larsson
32dbd8a6a5
Fix handling of @ptr32 network size
2012-03-20 15:25:45 +01:00
Alexander Larsson
ee944c8314
Add support for @virtual markup in spice protocol
...
This means the member is not sent on the network at all.
Instead its initialized to the attribute argument when demarshalled.
This is useful for backwards compatibility support.
2012-03-20 15:25:44 +01:00
Alexander Larsson
b1dc7fae2a
Initial import of spice protocol description and demarshall generator
...
The "spice.proto" file describes in detail the networking prototcol
that spice uses and spice_codegen.py can parse this and generate
demarshallers for such network messages.
2012-03-20 15:25:43 +01:00