Skip to content

Commit

Permalink
Update ProtoStruct.jl
Browse files Browse the repository at this point in the history
  • Loading branch information
Tortar committed Oct 14, 2023
1 parent 23edee5 commit 6b8df7a
Showing 1 changed file with 11 additions and 2 deletions.
13 changes: 11 additions & 2 deletions src/ProtoStruct.jl
Original file line number Diff line number Diff line change
Expand Up @@ -118,11 +118,15 @@ macro proto( expr )
v = NamedTuple{$field_names, $field_types}(($(fields_with_ref...),))
return $name{$(type_parameter_names...), typeof(v)}(v)
end

function $name($params_ex)
$name($(call_args...))
end

function $name{$(type_parameter_names...)}($params_ex) where {$(type_parameters...)}
$name($(call_args...))
end

function Base.getproperty( o::$name, s::Symbol )
return getindex(getfield(o, :properties), s)[]
end
Expand Down Expand Up @@ -164,10 +168,15 @@ macro proto( expr )
v = NamedTuple{$field_names, $field_types}(($(field_names...),))
return $name{$(type_parameter_names...), typeof(v)}(v)
end

function $name($params_ex)
$name($(call_args...))
end


function $name{$(type_parameter_names...)}($params_ex) where {$(type_parameters...)}
$name($(call_args...))
end

function Base.getproperty( o::$name, s::Symbol )
return getproperty( getfield(o, :properties), s )
end # function
Expand Down

0 comments on commit 6b8df7a

Please sign in to comment.