diff --git a/loxi_ir/ir.py b/loxi_ir/ir.py
index a0aa53b..aaa54ca 100644
--- a/loxi_ir/ir.py
+++ b/loxi_ir/ir.py
@@ -176,18 +176,8 @@
             raise Exception("Not a fixed length class: {}".format(self.name))
 
     @property
-    def message_length(self):
-        if self.is_fixed_length:
-            return self.base_length
-        else:
-            return find(lambda m: type(m) == OFLengthMember, self.members)
-
-    @property
-    def field_length(self):
-        if self.is_fixed_length:
-            return self.base_length
-        else:
-            return find(lambda m: type(m) == OFFieldLengthMember, self.members)
+    def length_member(self):
+        return find(lambda m: type(m) == OFLengthMember, self.members)
 
     @property
     def has_internal_alignment(self):
