Tag binary values in cbor if set
CBOR has tags, which work similarly to "subtype"s: https://www.iana.org/assignments/cbor-tags/cbor-tags.xhtml Unsure if this makes sense. Note that the subtype must just be one byte wide.
This commit is contained in:
		
							parent
							
								
									eb7376bb13
								
							
						
					
					
						commit
						e54f03f73b
					
				
					 2 changed files with 12 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -279,6 +279,12 @@ class binary_writer
 | 
			
		|||
 | 
			
		||||
            case value_t::binary:
 | 
			
		||||
            {
 | 
			
		||||
                if (j.m_value.binary->has_subtype())
 | 
			
		||||
                {
 | 
			
		||||
                    write_number(static_cast<std::uint8_t>(0xd8));
 | 
			
		||||
                    write_number(j.m_value.binary->subtype());
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                // step 1: write control byte and the binary array size
 | 
			
		||||
                const auto N = j.m_value.binary->size();
 | 
			
		||||
                if (N <= 0x17)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12641,6 +12641,12 @@ class binary_writer
 | 
			
		|||
 | 
			
		||||
            case value_t::binary:
 | 
			
		||||
            {
 | 
			
		||||
                if (j.m_value.binary->has_subtype())
 | 
			
		||||
                {
 | 
			
		||||
                    write_number(static_cast<std::uint8_t>(0xd8));
 | 
			
		||||
                    write_number(j.m_value.binary->subtype());
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                // step 1: write control byte and the binary array size
 | 
			
		||||
                const auto N = j.m_value.binary->size();
 | 
			
		||||
                if (N <= 0x17)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue