diff options
Diffstat (limited to 'docs/Bytecode')
-rw-r--r-- | docs/Bytecode | 110 |
1 files changed, 68 insertions, 42 deletions
diff --git a/docs/Bytecode b/docs/Bytecode index 880ccbd..272fd07 100644 --- a/docs/Bytecode +++ b/docs/Bytecode @@ -12,8 +12,13 @@ Format bits 0-9 : opcode The 8 bits of flag data are defined as follows: - bits 2-7: Must Be Zero (MBZ) - bit 1 : value is inherit + bits 4-7: Must Be Zero (MBZ) + bits 1-3: Generic value + 000 => no generic value + 001 => inherit + 010 => initial + 011 => revert + 100 => unset bit 0 : value is important The 14 bits of value are opcode-specific. @@ -44,19 +49,16 @@ Length is a 32bit numeric value (as described above) and unit is as follows: 00000101 => mm 00000110 => pt 00000111 => pc - 00001000 => cap - 00001001 => ch - 00001010 => ic - 00001011 => rem - 00001100 => lh - 00001101 => rlh - 00001110 => vh - 00001111 => vw - 00010000 => vi - 00010001 => vb - 00010010 => vmin - 00010011 => vmax - 00010100 => q + 00001000 => ch + 00001001 => rem + 00001010 => lh + 00001011 => vh + 00001100 => vw + 00001101 => vi + 00001110 => vb + 00001111 => vmin + 00010000 => vmax + 00010001 => q bit 9 set => percentage unit bits 9-31: MBZ @@ -342,11 +344,9 @@ Opcodes bits 0-6: 0000000 => string, 0000001 => uri, 0000010 => counter, - bits 12-13: MBZ - bits 8-11 : list-style-type + bits 8-13 : list-style-type 0000011 => counters, - bits 12-13: MBZ - bits 8-11 : list-style-type + bits 8-13 : list-style-type 0000100 => attr, other => rffe. bit 7 clear => keywords: @@ -358,10 +358,11 @@ Opcodes 0000101 => no-close-quote, other => rffe. - If the value is not "normal", "none", or "inherit", then there is - a parameter list. Each item is preceded by a <value> word which - declares the type of the next item. The list is terminated by a - word with all bits set to zero (the encoding for "normal"). + If the value is not "normal", "none", or a generic value ("inherit", + "initial", "unset", or "revert"), then there is a parameter list. + Each item is preceded by a <value> word which declares the type of + the next item. The list is terminated by a word with all bits set + to zero (the encoding for "normal"). For example, content: open-quote url('http://example.com/') @@ -390,7 +391,8 @@ Opcodes bits 0-6: 0000000 => none, other => rffe. - If the value is not "none", or "inherit", then there is a parameter + If the value is not "none", or a generic value ("inherit", + "initial", "unset", or "revert"), then there is a parameter list. Each item is preceded by a <value> word which declares the type of the next item. The list is terminated by a word with all bits set to zero (the encoding for "none"). @@ -406,7 +408,8 @@ Opcodes bits 0-6: 0000000 => none, other => rffe. - If the value is not "none", or "inherit", then there is a parameter + If the value is not "none", or a generic value ("inherit", + "initial", "unset", or "revert"), then there is a parameter list. Each item is preceded by a <value> word which declares the type of the next item. The list is terminated by a word with all bits set to zero (the encoding for "none"). @@ -488,6 +491,8 @@ Opcodes f => none, 10 => flex, 11 => inline-flex, + 12 => grid, + 13 => inline-grid other => Reserved for future expansion. 21 - elevation @@ -646,22 +651,24 @@ Opcodes 2f - list-style-type <value> (14bits) : - 0 => disc, - 1 => circle, - 2 => square, - 3 => decimal, - 4 => decimal-leading-zero, - 5 => lower-roman, - 6 => upper-roman, - 7 => lower-greek, - 8 => lower-latin, - 9 => upper-latin, - a => armenian, - b => georgian, - c => lower-alpha, - d => upper-alpha, - e => none, - other => Reserved for future expansion. + bits 6-13: MBZ + bits 0-5 : + 0 => disc, + 1 => circle, + 2 => square, + 3 => decimal, + 4 => decimal-leading-zero, + 5 => lower-roman, + 6 => upper-roman, + 7 => lower-greek, + 8 => lower-latin, + 9 => upper-latin, + a => armenian, + b => georgian, + c => lower-alpha, + d => upper-alpha, + e => none, + other => Reserved for future expansion. 30 - margin-top 31 - margin-right @@ -869,6 +876,7 @@ Opcodes 1 => relative, 2 => absolute, 3 => fixed, + 4 => sticky, other => Reserved for future expansion. 4a - quotes @@ -1375,4 +1383,22 @@ Opcodes bit 7 clear => Reserved for future expansion bits 0-6: MBZ -7c-3ff - Reserved for future expansion. +7c - fill-opacity + <value> (14bits) : + bits 8-13: MBZ + bits 0-7 : + bit 7 set => number follows + bits 0-6: MBZ + bit 7 clear => Reserved for future expansion + bits 0-6: MBZ + +7d - stroke-opacity + <value> (14bits) : + bits 8-13: MBZ + bits 0-7 : + bit 7 set => number follows + bits 0-6: MBZ + bit 7 clear => Reserved for future expansion + bits 0-6: MBZ + +7e-3ff - Reserved for future expansion. |