           'match': 'unittest',
           'name': 'entity.name.function.unit-test.d'
         },
+        { 'include': '#function-body' }
+      ]
+    },
+    'static-constructor': {
+      'patterns': [
+        { 'include': '#shared-static-constructor' }
+      ]
+    },
+    'static-destructor': {
+      'patterns': [
+        { 'include': '#shared-static-destructor' }
+      ]
+    },
+    'shared-static-constructor': {
+      'patterns': [
+        {
+          'match': '(shared\\s+)?static\\s+this\\s*\\(\\s*\\)',
+          'name': 'entity.name.class.constructor.shared-static.d'
+        },
+        { 'include': '#function-body' }
+      ]
+    },
+    'shared-static-destructor': {
+      'patterns': [
+        {
+          'match': '(shared\\s+)?static\\s+~\\s*this\\s*\\(\\s*\\)',
+          'name': 'entity.name.class.destructor.static.d'
+        },
+        { 'include': '#member-function-attributes' },
         { 'include': '#function-body' }
       ]
     },

    },
    'function-body': {
      'patterns': [

      ]
    },
    'in-statement': {
      'patterns': [

      ]
    },
    'out-statement': {
      'patterns': [

      ]
    },
    'body-statement': {
      'patterns': [

      ]
    },
    'constructor': {
      'patterns': [

      ]
    },
    'constructor-template': {
      'patterns': [

      ]
    },
    'destructor': {

    }
    'function-attributes': {
      'patterns': [
        { 'include': '#function-attribute' },
      ]
    },
    'function-attribute': {
      'patterns': [
        {
          'match': 'nothrow|pure',
          'name': 'storage.type.modifier.function-attribute.d'
        },
        {
          'include': '#property'
        }
      ]
    },
    'member-function-attributes': {
      'patterns': [
        { 'include': '#member-function-attribute' }
      ]
    },
    'member-function-attribute': {
      'patterns': [
        {
          'match': 'const|immutable|inout|shared',
          'name': 'storage.type.modifier.member-function-attribute'
        },
        { 'include': '#function-attribute' }
      ]
    },
    'default-initializer-expression': {
