mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 12:01:16 +00:00
Simplify contract macros.
This commit is contained in:
@@ -148,15 +148,13 @@ macro bool is_array_or_slice_of_char(bytes)
|
|||||||
{
|
{
|
||||||
$switch @typekind(bytes):
|
$switch @typekind(bytes):
|
||||||
$case POINTER:
|
$case POINTER:
|
||||||
var $Inner = $typefrom($typeof(bytes).inner);
|
typeid $inner = $typeof(bytes).inner;
|
||||||
$if $Inner.kindof == ARRAY:
|
$if $inner.kindof == ARRAY:
|
||||||
var $Inner2 = $typefrom($Inner.inner);
|
return $inner.inner == char.typeid;
|
||||||
return $Inner2.typeid == char.typeid;
|
|
||||||
$endif
|
$endif
|
||||||
$case ARRAY:
|
$case ARRAY:
|
||||||
$case SLICE:
|
$case SLICE:
|
||||||
var $Inner = $typefrom($typeof(bytes).inner);
|
return $typeof(bytes).inner == char.typeid;
|
||||||
return $Inner.typeid == char.typeid;
|
|
||||||
$default:
|
$default:
|
||||||
return false;
|
return false;
|
||||||
$endswitch
|
$endswitch
|
||||||
@@ -166,14 +164,12 @@ macro bool is_arrayptr_or_slice_of_char(bytes)
|
|||||||
{
|
{
|
||||||
$switch @typekind(bytes):
|
$switch @typekind(bytes):
|
||||||
$case POINTER:
|
$case POINTER:
|
||||||
var $Inner = $typefrom($typeof(bytes).inner);
|
var $inner = $typeof(bytes).inner;
|
||||||
$if $Inner.kindof == ARRAY:
|
$if $inner.kindof == ARRAY:
|
||||||
var $Inner2 = $typefrom($Inner.inner);
|
return $inner.inner == char.typeid;
|
||||||
return $Inner2.typeid == char.typeid;
|
|
||||||
$endif
|
$endif
|
||||||
$case SLICE:
|
$case SLICE:
|
||||||
var $Inner = $typefrom($typeof(bytes).inner);
|
return $typeof(bytes).inner == char.typeid;
|
||||||
return $Inner.typeid == char.typeid;
|
|
||||||
$default:
|
$default:
|
||||||
return false;
|
return false;
|
||||||
$endswitch
|
$endswitch
|
||||||
|
|||||||
Reference in New Issue
Block a user