CXC-Data-Visitor

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

            "Test::Pod::Coverage" : "1.08",
            "Test::Spelling" : "0.17",
            "Test::TrailingSpace" : "0",
            "Test::Version" : "1"
         }
      },
      "runtime" : {
         "requires" : {
            "Exporter::Shiny" : "0",
            "Feature::Compat::Defer" : "0",
            "Ref::Util" : "0",
            "experimental" : "0",
            "perl" : "5.020"
         }
      },
      "test" : {
         "recommends" : {
            "CPAN::Meta" : "2.120900"
         },
         "requires" : {
            "Data::Dump" : "0",

META.yml  view on Meta::CPAN

    - share
    - t
    - xt
provides:
  CXC::Data::Visitor:
    file: lib/CXC/Data/Visitor.pm
    version: '0.12'
requires:
  Exporter::Shiny: '0'
  Feature::Compat::Defer: '0'
  Ref::Util: '0'
  experimental: '0'
  perl: '5.020'
resources:
  bugtracker: https://rt.cpan.org/Public/Dist/Display.html?Name=CXC-Data-Visitor
  repository: https://codeberg.org/CXC-Optics/p5-CXC-Data-Visitor.git
version: '0.12'
x_generated_by_perl: v5.40.3
x_serialization_backend: 'YAML::Tiny version 1.74'
x_spdx_expression: GPL-3.0-only

dist.ini  view on Meta::CPAN


[EnsureChangesHasContent]

; --- Project-specific directives

;[AutoPrereqs]

[Prereqs]
experimental             = 0
Exporter::Shiny          = 0
Ref::Util                = 0
Feature::Compat::Defer   = 0
perl                     = 5.020

[Prereqs / ConfigureRequires ]
Module::Build::Tiny      = 0

[Prereqs / TestRequires]
Test2::V0                = 0
Data::Dump               = 0

examples/continue.pl  view on Meta::CPAN

#! perl

use v5.20;
use strict;
use experimental 'signatures';

use Ref::Util 'is_hashref', 'is_arrayref';
use CXC::Data::Visitor 'visit', 'RESULT_CONTINUE';
use builtin::compat 'load_module';
use lib::relative q{.};

load_module 'utils';

my %struct = (
    fruit => {
        berry  => 'purple',
        apples => [ 'fuji', 'macoun' ],

examples/continue_revisit_contents.pl  view on Meta::CPAN

#! perl

use v5.20;
use strict;
use experimental 'signatures', 'declared_refs';


use Ref::Util 'is_hashref', 'is_arrayref';
use CXC::Data::Visitor 'visit', -results;

use builtin::compat 'load_module';
use lib::relative q{.};
load_module 'utils';

my %struct = (
    fruit => {
        berry  => 'purple',
        apples => [ 'fuji', 'macoun' ],

examples/order.pl  view on Meta::CPAN

#! perl

use v5.20;
use strict;
use experimental 'signatures';


use Ref::Util 'is_hashref', 'is_arrayref';
use CXC::Data::Visitor 'visit', 'RESULT_CONTINUE';
use builtin::compat 'load_module';
use lib::relative q{.};

load_module 'utils';

my %struct = (
    fruit => {
        berry  => 'purple',
        apples => [ 'fuji', 'macoun' ],

examples/revisit_container_contents.pl  view on Meta::CPAN

#! perl

use v5.20;
use strict;
use experimental 'signatures';


use Ref::Util 'is_hashref', 'is_arrayref';
use CXC::Data::Visitor 'visit', -results;

use builtin::compat 'load_module';
use lib::relative q{.};
load_module 'utils';

my %struct = (
    fruit => {
        berry  => 'purple',
        apples => [ 'fuji', 'macoun' ],

examples/revisit_contents.pl  view on Meta::CPAN

#! perl

use v5.20;
use strict;
use experimental 'signatures';


use Ref::Util 'is_hashref', 'is_arrayref';
use CXC::Data::Visitor 'visit', -results;

use builtin::compat 'load_module';
use lib::relative q{.};
load_module 'utils';

my %struct = (
    fruit => {
        berry  => 'purple',
        apples => [ 'fuji', 'macoun' ],

examples/revisit_element.pl  view on Meta::CPAN

#! perl

use v5.20;
use strict;
use experimental 'signatures';


use Ref::Util 'is_hashref', 'is_arrayref';
use CXC::Data::Visitor 'visit', -results, -passes;

use builtin::compat 'load_module';
use lib::relative q{.};
load_module 'utils';

my %struct = (
    fruit => {
        berry  => 'purple',
        apples => [ 'fuji', 'macoun' ],

examples/stop_descent.pl  view on Meta::CPAN

#! perl

use v5.20;
use strict;
use experimental 'signatures';

use Ref::Util 'is_hashref', 'is_arrayref';
use CXC::Data::Visitor 'visit', -results;

use builtin::compat 'load_module';
use lib::relative q{.};
load_module 'utils';

my %struct = (
    fruit => {
        berry  => 'purple',
        apples => [ 'fuji', 'macoun' ],

examples/stop_descent_revisit_contents.pl  view on Meta::CPAN

#! perl

use v5.20;
use strict;
use experimental 'signatures';


use Ref::Util 'is_hashref', 'is_arrayref';
use CXC::Data::Visitor 'visit', -results;

use builtin::compat 'load_module';
use lib::relative q{.};
load_module 'utils';

my %struct = (
    fruit => {
        berry  => 'purple',
        apples => [ 'fuji', 'macoun' ],

examples/utils.pm  view on Meta::CPAN

#! perl

use v5.26;
use experimental 'declared_refs';
use feature 'signatures';
use Ref::Util 'is_ref';
use List::Util 'any';
use Term::Table;
use CXC::Data::Visitor -passes;

my %PASS_VISIT
  = ( PASS_VISIT_ELEMENT, 'PASS_VISIT_ELEMENT', PASS_REVISIT_ELEMENT, 'PASS_REVISIT_ELEMENT', );

sub render_element ( $ref, $kydx, $vref, $context, $meta ) {

    my \%meta       = $meta;

lib/CXC/Data/Visitor.pm  view on Meta::CPAN

use experimental 'signatures', 'lexical_subs', 'postderef';

#<<< no tidy
our $VERSION = '0.12';
#>>>

use base 'Exporter::Tiny';
use Hash::Util 'lock_hash', 'unlock_hash', 'unlock_value';
use POSIX 'floor';
use Scalar::Util 'refaddr', 'looks_like_number';
use Ref::Util 'is_plain_arrayref', 'is_plain_hashref', 'is_coderef', 'is_plain_ref',
  'is_plain_refref';
use Feature::Compat::Defer;

use constant {
    CYCLE_DIE      => 'die',
    CYCLE_CONTINUE => 'continue',
    CYCLE_TRUNCATE => 'truncate',
};
use constant CYCLE_QR => qr /\A die|continue|truncate \z/x;
use constant {

t/00-report-prereqs.dd  view on Meta::CPAN

                                      'Test::Pod::Coverage' => '1.08',
                                      'Test::Spelling' => '0.17',
                                      'Test::TrailingSpace' => '0',
                                      'Test::Version' => '1'
                                    }
                    },
       'runtime' => {
                      'requires' => {
                                      'Exporter::Shiny' => '0',
                                      'Feature::Compat::Defer' => '0',
                                      'Ref::Util' => '0',
                                      'experimental' => '0',
                                      'perl' => '5.020'
                                    }
                    },
       'test' => {
                   'recommends' => {
                                     'CPAN::Meta' => '2.120900'
                                   },
                   'requires' => {
                                   'Data::Dump' => '0',

t/sort.t  view on Meta::CPAN

#! perl

use v5.20;
use Test2::V0;

use CXC::Data::Visitor '-all';
use Ref::Util 'is_hashref', 'is_arrayref';
use experimental 'signatures', 'postderef';
use Data::Dump 'pp';

sub myhash {
    (
        a => 1,
        b => [ 2, 3, 4 ],
        c => {
            d => [ 5, 6, 7 ],
            e => 8,

t/visit.t  view on Meta::CPAN

#! perl

use v5.20;
use Test2::V0;

use CXC::Data::Visitor '-all';
use Ref::Util 'is_refref', 'is_arrayref';
use Scalar::Util 'refaddr';
use experimental 'signatures', 'postderef', 'lexical_subs';
use Data::Dump 'pp';

sub myhash {
    (
        a => 1,
        b => [ 2, 3, 4 ],
        c => {
            d => [ 5, 6, 7 ],



( run in 2.820 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )