[ 
https://issues.apache.org/jira/browse/DAFFODIL-2473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17348604#comment-17348604
 ] 

Mike Beckerle commented on DAFFODIL-2473:
-----------------------------------------

Note: shift operations should include arithmetic shift right and logical shift 
right as separate functions.

So the full list is
 * shiftLeft
 * shiftRight
 * logicalShiftRight (which is only different from shiftRight for signed types)
 * andBits
 * orBits
 * notBits

All in the dfdlx namespace.

> Need bit-wise AND, OR, NOT, and shift operations
> ------------------------------------------------
>
>                 Key: DAFFODIL-2473
>                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2473
>             Project: Daffodil
>          Issue Type: New Feature
>          Components: Back End, Front End
>    Affects Versions: 3.0.0
>            Reporter: Mike Beckerle
>            Assignee: Samarth Sah
>            Priority: Major
>
> There are a number of data representations DFDL cannot handle because it 
> cannot manipulate numbers with sufficient flexibility in expressions.
> We need AND, OR, NOT, maybe XOR, and shift left, shift right, and probably 
> arithmetic shift right (which does sign-extension of signed numbers). We 
> should add functions for the whole set of them.
> On signed numbers with specific sizes (long, int, short, byte) these should 
> behave as if the data was binary in 2s complement representation, i.e., as if 
> the most-significant-bit was playing the role of 2s complement sign.
> These operations should all be undefined (Schema Def Error) on decimal, 
> integer, and non-negative integer values, as well as float and double.
> Specifically, these operations are defined on long and its subtypes, and 
> unsignedLong and its subtypes only.
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to