xref: /aosp_15_r20/external/emboss/testdata/alignments.emb (revision 99e0aae7469b87d12f0ad23e61142c2d74c1ef70)
1*99e0aae7SDavid Rees# Copyright 2019 Google LLC
2*99e0aae7SDavid Rees#
3*99e0aae7SDavid Rees# Licensed under the Apache License, Version 2.0 (the "License");
4*99e0aae7SDavid Rees# you may not use this file except in compliance with the License.
5*99e0aae7SDavid Rees# You may obtain a copy of the License at
6*99e0aae7SDavid Rees#
7*99e0aae7SDavid Rees#     https://www.apache.org/licenses/LICENSE-2.0
8*99e0aae7SDavid Rees#
9*99e0aae7SDavid Rees# Unless required by applicable law or agreed to in writing, software
10*99e0aae7SDavid Rees# distributed under the License is distributed on an "AS IS" BASIS,
11*99e0aae7SDavid Rees# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*99e0aae7SDavid Rees# See the License for the specific language governing permissions and
13*99e0aae7SDavid Rees# limitations under the License.
14*99e0aae7SDavid Rees
15*99e0aae7SDavid Rees-- Structures which can be used be test code to check that alignment
16*99e0aae7SDavid Rees-- information is properly propagated through Emboss views.
17*99e0aae7SDavid Rees
18*99e0aae7SDavid Rees[$default byte_order: "BigEndian"]
19*99e0aae7SDavid Rees[(cpp) namespace: "emboss::test"]
20*99e0aae7SDavid Rees
21*99e0aae7SDavid Rees
22*99e0aae7SDavid Reesstruct Alignments:
23*99e0aae7SDavid Rees  0  [+4]   Placeholder4     zero_offset
24*99e0aae7SDavid Rees  0  [+6]   Placeholder6     zero_offset_substructure
25*99e0aae7SDavid Rees  2  [+6]   Placeholder6     two_offset_substructure
26*99e0aae7SDavid Rees  3  [+4]   Placeholder4     three_offset
27*99e0aae7SDavid Rees  4  [+4]   Placeholder4     four_offset
28*99e0aae7SDavid Rees  11 [+4]   Placeholder4     eleven_offset
29*99e0aae7SDavid Rees  12 [+4]   Placeholder4     twelve_offset
30*99e0aae7SDavid Rees  0  [+12]  Placeholder4[3]  zero_offset_four_stride_array
31*99e0aae7SDavid Rees  0  [+24]  Placeholder6[4]  zero_offset_six_stride_array
32*99e0aae7SDavid Rees  3  [+12]  Placeholder4[3]  three_offset_four_stride_array
33*99e0aae7SDavid Rees  4  [+24]  Placeholder6[4]  four_offset_six_stride_array
34*99e0aae7SDavid Rees
35*99e0aae7SDavid Rees
36*99e0aae7SDavid Reesstruct Placeholder4:
37*99e0aae7SDavid Rees  -- Four-byte structure used as a byte-oriented placeholder so that type
38*99e0aae7SDavid Rees  -- alignment can be tested without any of the bit/byte interface types.
39*99e0aae7SDavid Rees  0 [+4]  UInt  dummy
40*99e0aae7SDavid Rees
41*99e0aae7SDavid Rees
42*99e0aae7SDavid Reesstruct Placeholder6:
43*99e0aae7SDavid Rees  -- Six-byte structure.  Includes Placeholder4 so that substructure alignments
44*99e0aae7SDavid Rees  -- can be checked.
45*99e0aae7SDavid Rees  0 [+4]  Placeholder4  zero_offset
46*99e0aae7SDavid Rees  2 [+4]  Placeholder4  two_offset
47