The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

NAME

GraphQL::Type::Scalar - GraphQL scalar type

SYNOPSIS

my $int_type = GraphQL::Type::Scalar->new(
name => 'Int',
description =>
'The `Int` scalar type represents non-fractional signed whole numeric ' .
'values. Int can represent values between -(2^31) and 2^31 - 1. ',
serialize => \&coerce_int,
parse_value => \&coerce_int,
);

ATTRIBUTES

Has name, description from GraphQL::Role::Named.

serialize

Code-ref. Required.

Coerces from a Perl entity of the required type, to a GraphQL entity, or throws an exception.

Must throw an exception if passed a defined (i.e. non-null) but invalid Perl object of the relevant type. undef must always be valid.

parse_value

Code-ref. Required if is for an input type.

Coerces from a GraphQL entity, to a Perl entity of the required type, or throws an exception.

METHODS

is_valid

True if given Perl entity is valid value for this type. Uses "serialize" attribute.

EXPORTED VARIABLES

$Int

$Float

$String

$Boolean

$ID