GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Data::Object::Cast(3) User Contributed Perl Documentation Data::Object::Cast(3)

Data::Object::Cast

Data Type Casting for Perl 5

  package main;
  use Data::Object::Cast;
  local $Data::Object::Cast::To = 'Test::Object';
  # Data::Object::Cast::Deduce([1..4]); # Test::Object::Array

This package provides functions for casting native data types to objects and the reverse.

This package uses type constraints from:

Types::Standard

This package implements the following functions:

  Deduce(Any $value) : Object

The Deduce function returns the argument as a data type object.

  # given: synopsis
  Data::Object::Cast::Deduce([1..4])
  # $array
    
  # given: synopsis
  Data::Object::Cast::Deduce(sub { shift })
  # $code
    
  # given: synopsis
  Data::Object::Cast::Deduce(1.23)
  # $float
    
  # given: synopsis
  Data::Object::Cast::Deduce({1..4})
  # $hash
    
  # given: synopsis
  Data::Object::Cast::Deduce(123)
  # $number
    
  # given: synopsis
  Data::Object::Cast::Deduce(qr/.*/)
  # $regexp
    
  # given: synopsis
  Data::Object::Cast::Deduce(\'abc')
  # $scalar
    
  # given: synopsis
  Data::Object::Cast::Deduce('abc')
  # $string
    
  # given: synopsis
  Data::Object::Cast::Deduce(undef)
  # $undef
    

  DeduceDeep(Any @args) : (Object)

The DeduceDeep function returns any arguments as data type objects, including nested data.

  # given: synopsis
  Data::Object::Cast::DeduceDeep([1..4])
  # $array <$number>
    
  # given: synopsis
  Data::Object::Cast::DeduceDeep({1..4})
  # $hash <$number>
    

  Detract(Any $value) : Any

The Detract function returns the argument as native Perl data type value.

  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      [1..4]
    )
  )
  # $arrayref
    
  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      sub { shift }
    )
  )
  # $coderef
    
  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      1.23
    )
  )
  # $number
    
  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      {1..4}
    )
  )
  # $hashref
    
  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      123
    )
  )
  # $number
    
  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      qr/.*/
    )
  )
  # $regexp
    
  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      \'abc'
    )
  )
  # $scalarref
    
  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      'abc'
    )
  )
  # $string
    
  # given: synopsis
  Data::Object::Cast::Detract(
    Data::Object::Cast::Deduce(
      undef
    )
  )
  # $undef
    

  DetractDeep(Any @args) : (Any)

The DetractDeep function returns any arguments as native Perl data type values, including nested data.

  # given: synopsis
  Data::Object::Cast::DetractDeep(
    Data::Object::Cast::DeduceDeep(
      [1..4]
    )
  )
    
  # given: synopsis
  Data::Object::Cast::DetractDeep(
    Data::Object::Cast::DeduceDeep(
      {1..4}
    )
  )
    

  TypeName(Any $value) : Maybe[Str]

The TypeName function returns the name of the value's data type.

  # given: synopsis
  Data::Object::Cast::TypeName([1..4])
  # 'ARRAY'
    
  # given: synopsis
  Data::Object::Cast::TypeName(sub { shift })
  # 'CODE'
    
  # given: synopsis
  Data::Object::Cast::TypeName(1.23)
  # 'FLOAT'
    
  # given: synopsis
  Data::Object::Cast::TypeName({1..4})
  # 'HASH'
    
  # given: synopsis
  Data::Object::Cast::TypeName(123)
  # 'NUMBER'
    
  # given: synopsis
  Data::Object::Cast::TypeName(qr/.*/)
  # 'REGEXP'
    
  # given: synopsis
  Data::Object::Cast::TypeName(\'abc')
  # 'STRING'
    
  # given: synopsis
  Data::Object::Cast::TypeName('abc')
  # 'STRING'
    
  # given: synopsis
  Data::Object::Cast::TypeName(undef)
  # 'UNDEF'
    

Al Newkirk, "awncorp@cpan.org"

Copyright (C) 2011-2019, Al Newkirk, et al.

This is free software; you can redistribute it and/or modify it under the terms of the The Apache License, Version 2.0, as elucidated in the "license file" <https://github.com/iamalnewkirk/foobar/blob/master/LICENSE>.

Wiki <https://github.com/iamalnewkirk/foobar/wiki>

Project <https://github.com/iamalnewkirk/foobar>

Initiatives <https://github.com/iamalnewkirk/foobar/projects>

Milestones <https://github.com/iamalnewkirk/foobar/milestones>

Contributing <https://github.com/iamalnewkirk/foobar/blob/master/CONTRIBUTE.md>

Issues <https://github.com/iamalnewkirk/foobar/issues>

2020-04-27 perl v5.40.2

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.