コード例 #1
0
ファイル: alloc.c プロジェクト: plesner/neutrino
// Run a couple of sanity checks before returning the value from a constructor.
// Returns a condition if the check fails, otherwise returns the given value.
static value_t post_create_sanity_check(value_t value, size_t size) {
  TRY(heap_object_validate(value));
  heap_object_layout_t layout;
  heap_object_layout_init(&layout);
  get_heap_object_layout(value, &layout);
  COND_CHECK_EQ("post create sanity", ccValidationFailed, layout.size, size);
  return value;
}
コード例 #2
0
ファイル: behavior.c プロジェクト: tundra/neutrino
value_t value_validate(value_t value) {
  switch (get_value_domain(value)) {
    case vdHeapObject:
      return heap_object_validate(value);
    case vdDerivedObject:
      return derived_object_validate(value);
    default:
      return success();
  }
}