• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2016 Google Inc.
3  *
4  * Use of this source code is governed by a BSD-style license that can
5  * be found in the LICENSE file.
6  *
7  */
8 
9 #pragma once
10 
11 //
12 //
13 //
14 
15 #include "types.h"
16 
17 //
18 // STYLING
19 //
20 
21 struct skc_styling
22 {
23   struct skc_context      * context;
24 
25   struct skc_styling_impl * impl;
26 
27   void                   (* seal   )(struct skc_styling_impl * const impl);
28   void                   (* unseal )(struct skc_styling_impl * const impl, skc_bool const block);
29   void                   (* release)(struct skc_styling_impl * const impl);
30 
31   skc_int                   ref_count;
32 
33   struct {
34     union skc_layer_node  * extent;
35     skc_uint                size;
36     skc_uint                count;
37   } layers;
38 
39   struct {
40     struct skc_group_node * extent;
41     skc_uint                size;
42     skc_uint                count;
43   } groups;
44 
45   struct {
46     union skc_styling_cmd * extent;
47     skc_uint                size;
48     skc_uint                count;
49   } extras;
50 };
51 
52 //
53 //
54 //
55