enum
ACP::Protocol::PermissionOptionKind
Defined in:
acp/protocol/enums.crEnum Members
-
AllowOnce =
0 -
Allow this operation only this time.
-
AllowAlways =
1 -
Allow this operation and remember the choice.
-
RejectOnce =
2 -
Reject this operation only this time.
-
RejectAlways =
3 -
Reject this operation and remember the choice.
Constructors
- .new(pull : JSON::PullParser) : self
-
.parse(value : String) : PermissionOptionKind
Parses a wire-format string into a PermissionOptionKind.
Class Method Summary
-
.parse?(value : String) : PermissionOptionKind | Nil
Parses a wire-format string into a PermissionOptionKind.
Instance Method Summary
-
#allow_always?
Returns
trueif this enum value equalsAllowAlways -
#allow_once?
Returns
trueif this enum value equalsAllowOnce -
#reject_always?
Returns
trueif this enum value equalsRejectAlways -
#reject_once?
Returns
trueif this enum value equalsRejectOnce -
#to_json(json : JSON::Builder) : Nil
Serializes this enum member by name.
-
#to_s : String
Returns the wire-format string for this permission option kind.
Constructor Detail
Parses a wire-format string into a PermissionOptionKind. Raises ArgumentError if the string is not recognized.
Class Method Detail
Parses a wire-format string into a PermissionOptionKind. Returns nil if the string is not recognized.
Instance Method Detail
Serializes this enum member by name.
For non-flags enums, the serialization is a JSON string. The value is the
member name (see #to_s) transformed with String#underscore.
enum Stages
INITIAL
SECOND_STAGE
end
Stages::INITIAL.to_json # => %("initial")
Stages::SECOND_STAGE.to_json # => %("second_stage")
For flags enums, the serialization is a JSON array including every flagged
member individually serialized in the same way as a member of a non-flags enum.
None is serialized as an empty array, All as an array containing
all members.
@[Flags]
enum Sides
LEFT
RIGHT
end
Sides::LEFT.to_json # => %(["left"])
(Sides::LEFT | Sides::RIGHT).to_json # => %(["left","right"])
Sides::All.to_json # => %(["left","right"])
Sides::None.to_json # => %([])
ValueConverter.to_json offers a different serialization strategy based on the
member value.